2009-10-16 1 views
188

Voglio installare un JDK specifico (l'ultimo ad esempio). Per questo, sono andato alla homepage di download di JDK: http://java.sun.com/javase/downloads/index.jsp. ho cercato una versione per Mac, ma io sono un po 'sorpreso di vedere solo le versioni scaricabili per Linux, Windows e Solaris ...Come installare un JDK specifico su Mac OS X?

Ecco il messaggio per Mac:

"fornisce Apple Computer loro propria versione di Java: utilizzare la funzione di aggiornamento del software (disponibile nel menu Apple) per verificare di avere la versione più aggiornata di Java per il proprio Mac ".

OK MA ... quando ho aggiornare Java con Mac ho un JRE e non un JDK ...

non capisco il motivo per cui una versione JDK non esiste che è facilmente scaricabile/installabile (come un jar da decomprimere?) per Mac ...

+68

domanda famosa ... si dovrebbe accettare una risposta. ;) – gary

+0

[Fink] (http://www.finkproject.org) fornisce una soluzione per questo. – Daniel

+10

Nota che Java 7 è ora fornito da Oracle - la maggior parte delle risposte e la questio si riferiscono a uno stato precedente – Mark

risposta

18

Come dice il messaggio, devi andare su Apple, non su Sun, per Java sul Mac. Per quanto ne so, Apple JDK 6 è installato di default su Mac OS X 10.6 (Snow Leopard). Forse hai bisogno di installare gli strumenti di sviluppo dal tuo DVD di installazione di Mac OS X (gli strumenti di sviluppo sono un'installazione facoltativa dal DVD del sistema operativo).

See: http://developer.apple.com/java/

NOTA Questa risposta dal 16 ottobre 2009 è ormai superata; è possibile ottenere il JDK per Mac OS X dal normale JDK download page sul sito Web di Oracle ora.

+0

Grazie per il tempo dedicato all'aggiornamento della risposta – Quicksillver

0

Di regola non è possibile installare altre versioni di Java su Mac da quelli forniti da Apple tramite Software Update. Se hai bisogno di Java 6 devi avere un computer Intel a 64-bit. Dovresti sempre avere Java 5 e 1.4 e forse 1.3 installati se hai almeno OS X 10.4.

Se si dispone di MOLTO molto gomito ed è disposto a lavorare con il software beta, è possibile installare OpenJDK sotto OS X, ma non credo che vogliate andare lì.

+0

OpenJDK è il futuro: http://code.google.com/pp/openjdk-osx-build/ –

+0

@Neeme, le cose sono cambiate un po 'da quando ho scritto questa risposta ... –

+0

Lo so, è per questo che ho aggiunto quel commento. Forse avrebbe dovuto scrivere un commento un po 'più lungo per andare con il link :-) –

4

La spiegazione è che JDK è un po 'specifico e non contiene la libreria tools.jar. Per il mio sviluppo, ho bisogno di questa libreria e JDK di Mac non prevede che:

(Cf. http://developer.apple.com/mac/library/documentation/Java/Conceptual/Java14Development/02-JavaDevTools/JavaDevTools.html)

tools.jar non esiste. Le classi che si trovano di solito qui sono invece incluse in classes.jar. Gli script che si basano sull'esistenza di tools.jar devono essere riscritti di conseguenza.

Fa schifo!

+1

Ahhhhhhh !!! Come hai scoperto, 'tools.jar' è già incluso nel runtime per Mac OS X. Quindi cercare' tools.jar' non è l'approccio giusto su Mac per sapere se si tratta di un JDK o JRE :) –

+0

Grazie per il tuo risposta, hai ragione. Il mio bisogno era di ottenere gli strumenti.jar lib per un progetto specifico e per me era un approccio per riconoscere un jdk;) – ajeanson

3

A partire da Mac OS X v10.6 (Snow   Leopard), è possibile eseguire Java 6 in modalità a 32 bit su Mac con processore a 32 bit o 64 bit Intel.

Se non è possibile eseguire l'aggiornamento a Snow Leopard, Soy Latte è una versione precompilata di Java 6 per Intel a 32 bit.

1

Penso quest'altra domanda Stack Overflow potrebbe aiutare:

How to get JDK 1.5 on Mac OS X

Si dice in sostanza che se avete bisogno di compilare o eseguire un'applicazione Java con una versione precedente del JDK (ad esempio 1,4 o 1.5), puoi farlo usando l'1.6 perché è retrocompatibile. Per farlo, dovrai aggiungere il parametro -source 1.5 e/o -target 1.5 nelle opzioni javac o nel tuo IDE.

41

In un commento alla risposta @ Thilo, @mobibob ha chiesto come impostare JAVA_HOME nel file .bash_profile su un Mac. Risposta:

export JAVA_HOME=`/usr/libexec/java_home` 

Ciò dinamicamente assegnare alla JAVA_HOME alla posizione del primo JDK elencato nella scheda "Generale" di utilità "Preferenze Java".

Sede di Apple tecnico Q & A 1170: https://developer.apple.com/library/content/qa/qa1170/_index.html

EDIT:

Se preferite parentesi a apici inversi per la sostituzione di comando, questo funziona anche:

export JAVA_HOME=$(/usr/libexec/java_home) 
3

compilazione con -source 1.5 - l'obiettivo 1.5 (in un ambiente JDK 6) rispetterà solo gli elementi del linguaggio che erano in 1.5 e precedenti. Grande. Ma non ci sono stati cambiamenti di lingua in 6 comunque. Problema con questo approccio (su Mac con 1.6) è che l'utilizzo delle classi che venivano fornite da AFTER 1.5 continuerà a essere compilato perché esiste in rt.jar. Quindi si può eseguire in un env 1.5 e ottenere una classe non trovata eccezione senza preavviso quando si compila. Ho trovato questo fuori nel modo più duro con javax.swing.event.RowSorterEvent/Listener. Entrambi sono entrati "Dal momento che 1.6", ma non sono presi con -source 1.5

+0

C'era almeno un cambio di lingua in 6 ... – Trejkaz

10

Per le persone che utilizzano qualsiasi LEONE OS X 10.7.x

Hanno caricato Java SE 6 versione 1.6.0_26 disponibile qui

http://support.apple.com/kb/dl1421

+3

Aaand, lo hanno sostituito con _29, che ha il bug di MS SQL. Grande. :( – Carighan

10

ho comprato una Pro ieri MacBook (Mac OS X v10.8 (Mountain Lion)) e non v'è alcun JDK installato di default ...

così come javac, ho anche scoperto che non ha avuto pacchetti come SVN installato. Si scopre che puoi ottenere tutto dal Apple developer page (dovrai registrarti con il tuo AppleID). SVN fa parte del pacchetto "Strumenti riga di comando".

Enter image description here

Questo è quello che succede su un MacBook fresca:

Enter image description here

Enter image description here

Speriamo che questo vi aiuterà fuori altri neofiti come me;)

+5

+1 La situazione è cambiata un po 'con Mountain Lion.Nota anche che mentre Apple offre l'installazione opzionale di Java, è solo il vecchio Java 6. Le versioni correnti di Java per OS X sono ora distribuite da Oracle stesso. – Thilo

1

JDK è il Java Development Kit (utilizzato per sviluppare software Java).

JRE è Java Runtime Environment (utilizzato per eseguire qualsiasi file .jar "software Java").

Il JDK contiene un JRE al suo interno.

Su Windows quando si aggiorna Java, aggiorna automaticamente JRE.

Su Mac non hai un JRE separato, ma all'interno del JDK, così quando aggiorni Java aggiornerà il tuo JRE che si trova all'interno del tuo JDK; non installa un JDK per te. Hai bisogno di prenderlo da qualche altra parte.

+1

Penso che intendessi il JDK al posto dell'IDK Ho provato a modificare ma Stack Overflow ha detto che le modifiche devono essere più lunghe di 6 caratteri, menzionandolo solo per evitare confusione – webworm

3

Se è stato installato birra, cmd seguito sarà utile:

birra botte installare Java

+0

Brew? Vuoi dire [Homebrew] (https: // en. wikipedia.org/wiki/Homebrew_%28package_management_software%29)? –

2

Il modo più semplice è quello di utilizzare Homebrew. Installare Homebrew e poi:

brew tap caskroom/versions 
brew cask install java7 

è possibile elencare tutte le versioni disponibili utilizzando il seguente comando: brew cask search java

1

controllare questo strumento fantastico sdkman per gestire il JDK e altri strumenti correlati JDK con grande facilità!

ad es.

$sdk list java 
$sdk install java <VERSION>