2009-10-16 14 views
188

Ich möchte ein bestimmtes JDK (das neueste zum Beispiel) installieren. Dazu ging ich auf die JDK-Download-Homepage: http://java.sun.com/javase/downloads/index.jsp. Ich suchte eine Mac-Version, aber ich bin ein bisschen überrascht, nur herunterladbare Versionen für Linux, Windows und sehen Solaris ...Wie installiere ich ein bestimmtes JDK unter Mac OS X?

Hier ist die Nachricht für Mac:

„Apple Computer liefert ihre eigene Version von Java. Verwenden Sie die Software-Aktualisierungsfunktion (im Apple-Menü verfügbar), um zu überprüfen, ob Sie die aktuellste Java-Version für Ihren Mac haben: . "

OK ABER ... wenn ich ein Update Java mit Mac habe ich ein JRE und kein JDK ...

Ich verstehe nicht, warum eine JDK-Version gibt es nicht so leicht ist herunterladbar/installierbar (wie ein Glas zum Entpacken?) für Mac ...

+68

Berühmte Frage ... Sie sollten eine Antwort akzeptieren. ;) – gary

+0

[Fink] (http://www.finkproject.org) bietet hierfür eine Lösung. – Daniel

+10

Beachten Sie, dass Java 7 jetzt von Oracle bereitgestellt wird - die meisten Antworten und die Frage beziehen sich auf einen früheren Status – Mark

Antwort

18

Wie die Nachricht sagt, müssen Sie zu Apple, nicht Sun, für Java auf dem Mac gehen. Soweit ich weiß, ist Apple JDK 6 standardmäßig unter Mac OS X 10.6 (Snow Leopard) installiert. Möglicherweise müssen Sie die Entwicklertools von Ihrer Mac OS X-Installations-DVD installieren (die Entwicklungstools sind eine optionale Installation von der OS-DVD).

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

HINWEIS Diese Antwort vom 16. Oktober 2009 ist jetzt veraltet; Sie können jetzt das JDK für Mac OS X von der regulären JDK download page auf der Oracle-Website abrufen.

+0

Vielen Dank, dass Sie sich die Zeit genommen haben, die Antwort zu aktualisieren – Quicksillver

0

In der Regel können Sie keine andere Versionen von Java-Installation auf einem Mac als die von Apple über Software Update zur Verfügung gestellt. Wenn Sie Java 6 benötigen, benötigen Sie einen 64-Bit-Intel-Computer. Sie sollten immer Java 5 und 1.4 und vielleicht 1.3 installiert haben, wenn Sie mindestens OS X 10.4 haben.

Wenn Sie sehr viel Ellenbogen Fett haben und bereit sind, mit Beta-Software zu arbeiten, können Sie die OpenJDK unter OS X installieren, aber ich glaube nicht, dass Sie dorthin gehen wollen.

+0

OpenJDK ist die Zukunft: http://code.google.com/p/openjdk-osx-build/ –

+0

@Neeme, die Dinge haben sich ein bisschen verändert, seit ich diese Antwort geschrieben habe ... –

+0

Ich weiß, deshalb habe ich diesen Kommentar hinzugefügt. Vielleicht hätte ich etwas länger kommentieren sollen um mit dem Link zu gehen :-) –

4

Die Erklärung ist, dass JDK ein bisschen spezifisch ist und die Bibliothek tools.jar nicht enthält. Für meine Entwicklung, ich brauche diese Bibliothek und Mac JDK ist es nicht bieten:

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

tools.jar existiert nicht. Die Klassen, die sich normalerweise hier befinden, sind stattdessen in classes.jar enthalten. Skripte, die auf der Existenz von tools.jar beruhen, müssen entsprechend neu geschrieben werden.

Es ist zum Kotzen!

+1

Ahhhhhhh !!! Wie Sie festgestellt haben, ist 'tools.jar' bereits in der Laufzeitumgebung von Mac OS X enthalten. Daher ist die Suche nach' tools.jar' nicht der richtige Ansatz, um festzustellen, ob es sich um ein JDK oder JRE handelt :) –

+0

Danke für Ihre Hilfe Antwort, du hast Recht. Mein Bedürfnis war, die Werkzeuge zu bekommen.Jar lib für ein bestimmtes Projekt und für mich war es ein Ansatz, eine jdk zu erkennen;) – ajeanson

3

Ab Mac OS X v10.6 (Snow   Leopard) können Sie Java 6 im 32-Bit-Modus auf 32-Bit- oder 64-Bit-Intel-Prozessoren mit Macs ausführen.

Wenn Sie nicht auf Snow Leopard aktualisieren können, ist Soy Latte eine vorkompilierte Version von Java 6 für Intel 32-Bit.

1

Ich denke, die andere Stack-Überlauf Frage helfen könnte:

How to get JDK 1.5 on Mac OS X

Es sagt im Grunde, dass, wenn Sie eine Java-Anwendung, die mit einer älteren Version des JDK (zB 1.4 kompilieren oder ausführen oder 1.5), können Sie es mit dem 1.6 tun, weil es abwärtskompatibel ist. Um dies zu tun, müssen Sie den Parameter -source 1.5 und/oder -target 1.5 in den Javac-Optionen oder in Ihrer IDE hinzufügen.

41

In einem Kommentar unter @ Thilos Antwort fragte @mobibob, wie man JAVA_HOME in Ihrem .bash_profile auf einem Mac einstellt. Antwort:

export JAVA_HOME=`/usr/libexec/java_home` 

Dies wird dynamisch zuweisen der Position des ersten JDK in der Registerkarte „Allgemein“ von „Java-Einstellungen“ Dienstprogramm aufgeführt java_home.

Siehe Apple Technical Q & A 1170: https://developer.apple.com/library/content/qa/qa1170/_index.html

EDIT:

Wenn Sie Klammern für Backticks Befehl Substitution bevorzugen, dies auch funktioniert:

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

Kompilieren mit -source 1.5 - Ziel 1.5 (in einer JDK 6-Umgebung) berücksichtigt nur Sprachelemente, die in 1.5 und älter waren. Groß. Aber es gab keine Sprachänderungen in 6 sowieso. Problem bei diesem Ansatz (auf Mac mit 1.6) ist, dass die Verwendung von Klassen, die nach 1.5 kamen, trotzdem kompiliert wird, weil sie in der rt.jar existieren. So könnte man in einer 1.5 env laufen und eine Exception ohne Ausnahme bekommen, wenn man kompiliert. Ich fand das auf die harte Tour mit javax.swing.event.RowSorterEvent/Listener. Beide eingegeben "Seit 1.6" sind aber nicht mit -source 1,5

+0

Es gab mindestens eine Sprachänderung in 6 ... – Trejkaz

10

Für Menschen mit einem beliebigen LION OS X 10.7.x

Sie hochgeladen Java SE 6 Version 1.6.0_26 verfügbar hier

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

gefangen
+3

Aaand, sie ersetzten es mit _29, die den MS SQL Bug hat. Groß. :( – Carighan

10

ich kaufte ein MacBook Pro gestern (Mac OS X v10.8 (Mountain Lion)) und es gibt keine JDK standardmäßig installiert ...

Neben javac, ich habe es auch nicht-Pakete wie SVN hat gefunden Eingerichtet. Es stellt sich heraus, dass Sie alles von der Apple developer page bekommen können (Sie müssen sich bei Ihrer AppleID registrieren). SVN ist Teil des "Command Line Tools" -Pakets.

Enter image description here

Dies ist, was auf einem frischen MacBook passiert:

Enter image description here

Enter image description here

Hoffentlich helfen aus anderen Neulingen wie mir;)

+5

+1. Die Situation hat sich ein wenig mit Mountain Lion geändert. Beachten Sie auch, dass, während Apple bietet die optionale Java-Installation, nur von den älteren Java 6. Aktuelle Versionen von Java für OS X sind jetzt von Oracle selbst verteilt. – Thilo

1

JDK das ist Java Development Kit (wird zur Entwicklung von Java-Software verwendet).

JRE ist die Java Runtime Environment (zum Ausführen einer beliebigen .jar-Datei 'Java-Software').

Das JDK enthält eine JRE.

Wenn Sie Java unter Windows aktualisieren, wird die JRE automatisch aktualisiert.

Auf Mac haben Sie keine JRE getrennt, Sie haben es, aber innerhalb des JDK, also wenn Sie Java aktualisieren, wird es Ihre JRE aktualisieren, die in Ihrem JDK ist; Es installiert kein JDK für Sie. Sie müssen es von woanders bekommen.

+1

Ich denke, du meintest JDK statt IDK. Ich habe versucht, zu bearbeiten, aber Stack Overflow sagte, dass die Änderungen länger als 6 Zeichen sein müssen. – webworm

3

Wenn Sie brauen installiert, cmd wird im folgenden hilfreich sein:

Gebräu Fass java

+0

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

2

Der einfachste Weg, Homebrew zu verwenden ist installieren. Homebrew installieren und dann:

brew tap caskroom/versions 
brew cask install java7 

Sie können alle verfügbaren Versionen Liste mit dem folgenden Befehl: brew cask search java

1

Karo heraus dieses fantastische Werkzeug sdkman JDK und andere jdk verwandte Werkzeuge mit großer Leichtigkeit zu verwalten!

z.B.

$sdk list java 
$sdk install java <VERSION> 
Verwandte Themen