Ich habe jdk 1.8.0 u5 installiert, aber das Kommandozeilen-Java meldet 1.7:
$ java -fullversion
java full version "1.7.0_51-b13"
$ which java
/usr/bin/java
$ ls -l /usr/bin/java
lrwxr-xr-x 1 root wheel 74 Oct 23 2013 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
Hier ist was installiert ist
$ ls -l /System/Library/Frameworks/JavaVM.framework/Versions/
total 64
lrwxr-xr-x 1 root wheel 10 Oct 23 2013 1.4 -> CurrentJDK
lrwxr-xr-x 1 root wheel 10 Oct 23 2013 1.4.2 -> CurrentJDK
lrwxr-xr-x 1 root wheel 10 Oct 23 2013 1.5 -> CurrentJDK
lrwxr-xr-x 1 root wheel 10 Oct 23 2013 1.5.0 -> CurrentJDK
lrwxr-xr-x 1 root wheel 10 Oct 23 2013 1.6 -> CurrentJDK
lrwxr-xr-x 1 root wheel 10 Oct 23 2013 1.6.0 -> CurrentJDK
drwxr-xr-x 8 root wheel 272 May 13 10:21 A
lrwxr-xr-x 1 root wheel 1 Oct 23 2013 Current -> A
lrwxr-xr-x 1 root wheel 59 Oct 23 2013 CurrentJDK -> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents
ebenfalls:
$ /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java -fullversion
java full version "1.7.0_51-b13"
Das Java Control Panel Applet meldet 1.8, aber in / Library / Internet \ Plug-Ins / JavaAppletPlugin.plugin /
Irgendeine Idee, wohin es ging?
Antworten:
Java 7 und Java 8 sind unter installiert
/Library/Java/JavaVirtualMachines
, und um Informationen zu den installierten Java- VMs zu erhalten, können Sie den Befehl / usr / libexec / java_home verwenden , der eine Verknüpfung zu ist/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java_home
.Einige der zu verwendenden Befehle sind:
/usr/libexec/java_home -verbose
gibt Ihnen alle installierten Versionen mit Pfad./usr/libexec/java_home -v '1.6*'
Sie erhalten JAVA_HOME von Java 6/usr/libexec/java_home -v '1.7*'
gibt dir JAVA_HOME von Java 7 (falls installiert)/usr/libexec/java_home -v '1.8*'
gibt dir JAVA_HOME von Java 8 (falls installiert)Und wenn
/usr/libexec/java_home
ohne Parameter aufgerufen wird, sollten Sie die aktuell aktivierte (neueste) Java-Version erhalten. Wenn Sie beim/usr/libexec/java_home
Aufruf nicht die neueste Java-Version erhalten , können Sie versuchen, Ihren Mac neu zu starten, damit das System die aktuelle Last des/usr/bin/java
Links / der Verknüpfung zu neu lädt/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
quelle
Ich hatte das gleiche Problem unter OS X Yosemite 10.9.
Das Problem wurde durch die Installation des Java SE Development Kit 8 behoben .
Ich hatte die andere Version installiert, die kein SE-Entwicklungskit ist, und sie funktionierte nur in Webbrowsern, nicht für das Terminal.
quelle