397 Stimmen

Ich habe Java 7 auf Mac OS X installiert, aber Terminal verwendet immer noch Version 6

Ich habe JDK 7u7 von der Oracle-Website heruntergeladen und installiert. Aber nach der Installation zeigt das Terminal immer noch Java Version 6 an

$java -version
java version "1.6.0_35"
Java(TM) SE Runtime Environment (build 1.6.0_35-b10-428-11M3811)
Java HotSpot(TM) 64-Bit Server VM (build 20.10-b01-428, mixed mode)

Haben Sie eine Idee, warum Java 7 nicht angezeigt wird?

Ans: OK, das Problem ist behoben. Hier ist die Antwort: Ich habe festgestellt, dass mein Terminal ein .bash_profile hat und die Variable java home auf 1.6 gesetzt ist.

export JAVA_HOME="/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home"

Dies ist also die Zeile, die das Problem jedes Mal verursacht, wenn ich ein neues Terminalfenster öffne. Entfernen Sie einfach diese Zeile, um das Problem zu lösen. Sie müssen immer noch befolgen, was @aleroot gesagt hat, aber wenn das bei Ihnen nicht funktioniert, überprüfen Sie die .bash_profile (oder .bashrc) Einstellungsdatei, um zu sehen, ob Sie zuvor eine Java-Version exportiert haben.

1voto

Hefewe1zen Punkte 111

Sie können diesen Befehl ausführen, um die Version von Java zu finden, die sich unter /Library/Internet Plugins/ befindet:

defaults read /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Info.plist CFBundleVersion

0voto

Miguel Mota Punkte 19214

Überprüfen Sie die installierten JDK-Versionen:

$ ls  /Library/Java/JavaVirtualMachines/
jdk-11.0.2.jdk  jdk1.8.0_91.jdk

Jetzt in Ihrem ~/.bashrc exportieren JAVA_HOME mit Angabe der Version:

if [ -e /usr/libexec/java_home ]; then
  export JAVA_HOME=$(/usr/libexec/java_home -v 11)
fi

Die Quelle der bashrc-Datei und die Java-Version werden aktualisiert:

$ java -version
java version "11.0.2" 2019-01-15 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.2+9-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.2+9-LTS, mixed mode)

0voto

liangli Punkte 1131

Die neueste 100% wirksame Methode:

in der Bash:

vim ~/.bash_profile

hinzufügen.

export PATH="/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin:$PATH"
  • :wq zu sparen
  • cmd+q bash zwangsbeenden
  • öffnen Sie erneut die Bash und geben Sie ein java -version

Aber eigentlich verweist dieser Pfad auf jre und nicht auf jdk.

Wenn Sie den Pfad zum JDK angeben wollen, müssen Sie

  1. Vergewissern Sie sich, dass Sie JDK und nicht nur eine JRE-Laufzeitumgebung installiert haben.
  2. ersetzen Sie den vorherigen Pfad durch PATH="/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk" können Sie gehen zu /Library/Java/JavaVirtualMachines um sicherzustellen, dass Sie die erwartete Version des JDK installiert haben.

0voto

Santanu Karar Punkte 1010

Bei der Installation über das verteilte JDK-DMG von der Oracle-Website wird bei mir alles automatisch aktualisiert. Ich habe gesehen (in El Capitan), dass die Aktualisierung durch System Preferences > Java Aktualisierungen durchführen, die aber nicht in der Befehlszeile angezeigt werden. Die Installation über DMG erledigt die Aufgabe.

0voto

Jade Hamel Punkte 1290

Ich habe dieses Problem gelöst mit sudo rm /usr/bin/java

Und ich habe die letzte Java SE Runtime Environment heruntergeladen und installiert: http://www.oracle.com/technetwork/java/javase/downloads/index.html

sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk/Contents/Home/jre/bin/java /usr/bin/java hat bei mir nicht funktioniert, denn ich habe Operation not permitted . El Capitan schützt nun bestimmte Systemverzeichnisse im "Rootless"-Modus (auch bekannt als Systemintegritätsschutz). Dies gilt für macOS Sierra und wahrscheinlich für neue macOS-Versionen in absehbarer Zukunft.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X