2017-08-01 5 views
1

Ich kopierte das neueste Java 1.8 auf einen Red Hat Linux Server. Ich habe den Befehl java -version ausgeführt und die Version 1.7.0_131 zurückgegeben. Ich aktualisierte .bashrc und die jre auf die neueste Version 1.8. Wenn ich die Befehlsversion java -version ausführe, sagt sie immer noch ihre Version 1.7.0_31. Was ich wissen muss, woher kommt das? Ich habe .profile, .bashrc und JAVA_HOME überprüft sie alle zeigen auf den Ort, wo ich auf 1.8 aktualisieren. Vielen Dank für Ihre Hilfe.JAVA_HOME konnte nicht gefunden werden

Antwort

0

Geben Sie which java ein und Sie werden wahrscheinlich (zumindest nachdem Sie alle Symlinks gefolgt sind) sehen, dass die Java-Programmdatei von einer anderen Stelle als Ihrer neu gesetzten JAVA_HOME stammt. Sie müssen die entsprechenden Symlinks auf Version 1.8, auch, wie diese erstellen:

ln -s /your/path/to/v18/bin/java /usr/bin/java 

Beachten Sie, dass bestehende Anwendungen könnten die 1.7 Java-Version verwenden, und man könnte sie brechen, wenn Sie /usr/bin/java gesetzt (oder was auch immer Pfad der which Befehl zeigte Ihnen) auf die Version 1.8.

Fyi, JAVA_HOME ist nicht dazu gedacht, von Ihrer Shell verwendet zu werden, um den Java Befehl zu finden. Es wird von anderer Software verwendet, die Java benötigt, um zu wissen, wo sie zu finden ist.

+0

die Java-Punkte/usr/bin // java – SGR29

+0

... laufen, die ein symbolischer Link ist. Überprüfe, wohin es mit '' ls -al/usr/bin/java'' geht. – Matt

+0

Das hat funktioniert. Vielen Dank. Wenn ich das mache, bekomme ich/usr/bin/java /. Was muss ich tun, um dieses Ergebnis "/ opt/adobe/java/jre/bin/java" zu sehen, wenn ich welches Java mache? – SGR29

0

Machen Sie es wie dieses eine Mal

export JAVA_HOME=/jdk/path 

Wenn Sie es kontinuierlich verwenden, den obigen Code in Ihre .bashrc oder Profil hinzufügen. Dann neuen Terminal öffnen oder unten Code

source .bashrc 
Verwandte Themen