2014-01-14 4 views
19

Nach dem Herunterladen der neuesten. TAR-Datei lief ich tar zxvf jdk-7u45-linux-x64.tar.gz, um Java-Dateien zu extrahieren.Ubuntu: Ändern Sie den Pfad von OpenJDK 6 zu Oracle JDK 7

Legen Sie den Pfad in .bashrc Datei (vi ~/.bashrc) wie folgt fest;

export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_45/bin/java 
export PATH=$PATH:/usr/lib/jvm/jdk1.7.0_45/bin 
export JDK_HOME=/usr/lib/jvm/jdk1.7.0_45  
export JRE_HOME=/usr/lib/jvm/jre1.7.0_45 

Nun läuft Befehl java -version oder welche Java, Java-Pfad zeigt immer noch auf die ältere Java-Version (java version "1.6.0_27").

Ich weiß, Standard Ubuntu dauert OpenJDK Pfad. Ich muss den Pfad als letzte Version als meine Systemumgebungsvariable ändern, die in .bashrc Datei festgelegt wird. Auch

, sudo update-alternatives --config java

Selection Path          Priority Status 
------------------------------------------------------------ 
    0   /usr/lib/jvm/java-7-oracle/jre/bin/java 1062  auto mode 
    1   /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061  manual mode 
    2   /usr/lib/jvm/java-7-oracle/jre/bin/java 1062  manual mode 
* 3   /usr/lib/jvm/jdk1.7.0_45/bin/java   1   manual mode 
Press enter to keep the current choice[*], or type selection number: 3 

Antwort

8

Sie wollen wahrscheinlich

export PATH=/usr/lib/jvm/jdk1.7.0_45/bin:$PATH 

OpenJDK ist wahrscheinlich immer noch auf dem Weg zu tun, und Linux wird die erste java es Verwendung findet.

Wenn Sie es nicht brauchen, würde ich empfehlen, OpenJDK zu deinstallieren.

36

Ubuntu (und Debian) haben eine elegante Möglichkeit, Bibliotheken wie die jdk zu verwalten.

Mit update-alternatives können Sie mehrere jdk-Bibliotheken auf demselben System verwalten, wobei Sie auswählen, welche als Hauptversion verwendet werden soll.

Zuerst müssen Sie eine Alternative für die neu installierte JDK installieren:

sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0_45/bin/java" 1 
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0_45/bin/javac" 1 

Auf diese Weise können Sie die neue jdk als Alternative zu dem Original installieren. Dann können Sie was Sie sich entscheiden wan zu verwenden:

sudo update-alternatives --config java 
sudo update-alternatives --config javac 

Sie werden aufgefordert zu wählen, die jdk Sie verwenden möchten, auf meinem System habe ich: Sie

There are 2 choices for the alternative java (providing /usr/bin/java). 

    Selection Path           Priority Status 
------------------------------------------------------------ 
    0   /usr/lib/jvm/java-6-openjdk-i386/jre/bin/java 1061  auto mode 
    1   /usr/lib/jvm/java-6-openjdk-i386/jre/bin/java 1061  manual mode 
* 2   /usr/lib/jvm/java-7-openjdk-i386/jre/bin/java 1051  manual mode 

Press enter to keep the current choice[*], or type selection number: 

kann jederzeit sehen, welche Alternativen Sie haben für java oder javac mit der --list Option:

sudo update-alternatives --list java 
sudo update-alternatives --list javac 

Um weitere Optionen prüfen, die update-alternatives Man Seite.

+0

beim Ausführen von sudo update-alternatives --install "/ usr/bin/javac" "java" "/usr/lib/jvm/jdk1.7.0_45/bin/java" 1 Update-Alternativen: Fehler: alternative Verbindung/usr/bin/javac wird bereits von javac verwaltet. –

+1

@DevendraSingh Sie haben einen Tippfehler: Verwechseln Sie nicht 'javac' mit' java' Sie haben "/ usr/bin/javac" zeigt auf "/usr/lib/jvm/jdk1.7.0_45/bin/java" – Atropo

+0

Ich kann immer noch nicht den Weg ändern. –

4

Versuchen Sie Folgendes in Ihr Terminal einzugeben.

sudo update-alternatives --config java

Die Ausgabe wird einige Entscheidungen, und Sie können die richtige auswählen, die auf Ihrem Computer installiert.

3

Run

sudo update-java-alternatives --list 

die Java-Installationen auf einem Rechner mit Namen und Verzeichnis zur Liste aus und läuft dann

sudo update-java-alternatives --set [JDK/JRE name e.g. java-8-oracle] 

zu wählen, welche JRE/JDK zu verwenden.

Wenn Sie für jede Java-Aufgabe verschiedene JDKs/JREs verwenden möchten, können Sie update-alternatives ausführen, um jeweils eine Java-Programmdatei zu konfigurieren. Sie können laufen

sudo update-alternatives --config java[Tab] 

die Java zu sehen Befehle, die konfiguriert werden können (java, javac, javah, javaws, etc). Und dann

wird diese Java-Task/Befehl zu einem bestimmten JDK/JRE zuordnen.

Sie können auch JAVA_HOME für einige Anwendungen festlegen müssen: von this answer Sie

export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::") 

für JREs oder

export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:jre/bin/java::") 

für JDKs verwenden können.

4

Laufender Befehl im Terminal:

sudo update-alternatives --config java 

von der Kommandozeile der Version der JRE festlegen mögen Sie wie verfügbare Version für die Nutzung von Java installieren: 1.6 und 1.8
Siehe unten:

enter image description here

und wählen 1 Option und stellen Sie Java-6-Version weil bereits aktuelle Auswahl in Java-8 gesetzt.