Ich möchte einige Programmierung mit dem neuesten JavaFX, die Java 8 erfordert zu tun. Ich verwende IntelliJ 13 CE und Mac OS X 9 Mavericks. Ich habe das Java 8-Installationsprogramm von Oracle ausgeführt, und die Dateien sehen so aus, als wären sie im folgenden Verzeichnis gelandet
/Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk
aber frühere Versionen sind unter
/System/Library/Java/JavaFrameworks/jdk1.6....
Ich bin mir nicht sicher, warum das neueste Installationsprogramm es in /Library
statt in /System/Library
ablegt (und was der Unterschied ist). Aber /usr/libexec/java_home
findet 1.8 nicht, also funktionieren alle Beiträge, die ich gefunden habe, wie man die aktuelle Java-Version einstellt, nicht. Ich habe versucht, einen symbolischen Link hinzuzufügen, damit es so aussieht, als ob 1.8 im Pfad /System/Library...
liegt, aber das hilft nicht. /usr/libexec/java_home -V
listet immer noch nur das alte Java 1.6 auf.
Ironischerweise zeigt das "Java" Kontrollfeld unter Systemeinstellungen nur Java 1.8 an!
Warum setzt Oracle's Installationsprogramm es nicht dorthin, wo es wirklich hingehört? Und wie kann ich dieses Problem umgehen?
Oracle hat einen schlechten Ruf, was die einfache Installation und Konfiguration von Java angeht, aber mit Homebrew kann das neueste OpenJDK (Java 13) mit installiert werden:
brew cask install java
Für die vielen Anwendungsfälle, die auf eine ältere Version (üblicherweise Java 8) angewiesen sind, macht es das Projekt AdoptOpenJDK mit einem zusätzlichen Schritt möglich.
brew tap adoptopenjdk/openjdk
brew cask install adoptopenjdk8
Bestehende Benutzer von Homebrew können auf Error: Cask adoptopenjdk8 exists in multiple taps
aufgrund früherer Workarounds mit verschiedenen Anweisungen. Dies kann gelöst werden, indem man den Speicherort mit brew cask install adoptopenjdk/openjdk/adoptopenjdk8
vollständig angibt.
Ich habe Anwendungen, die sowohl Java 7 als auch Java 8 verwenden, und muss ständig hin- und herwechseln.
Ich verwende dieses von Johan geschriebene Skript:
http://www.jayway.com/2014/01/15/how-to-switch-jdk-version-on-mac-os-x-maverick/
Sie können es jetzt beim Start einstellen oder das Skript danach aufrufen.
Installieren Sie das JDK für Mac.
Java 7
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
Java 8
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Ich hatte auch das gleiche Problem. Aber nach einigem Hin und Her konnte ich das Problem beheben.
Versuchen Sie, 1.6 sdk mit sudo rm zu entfernen und starten Sie Ihren Mac neu.
Laden Sie die .dmg-Datei erneut herunter. Es besteht die Möglichkeit, dass das heruntergeladene .dmg-Installationsprogramm beschädigt sein könnte. Installieren Sie erneut.
Führen Sie nach der Installation den folgenden Befehl aus. Er gibt den Pfad für jdk 8 an. /usr/libexec/java_home -v 1.8
Sie können auch den jdk 8-Ordner aufrufen und sehen. Die Dateien können versteckt sein. ls -al /Library/Java/JavaVirtualMachines/