Path

無法更改 JAVA_HOME

  • October 17, 2013

當我在終端中執行 java -version 時,我得到:

user@ubuntu:~$ java -version
java version "1.7.0_25"
OpenJDK Runtime Environment (IcedTea 2.3.10) (7u25-2.3.10-1ubuntu0.13.04.2)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)

我需要將我的 java 更改為 5。我已經下載了位於此處的 jdk5:

/home/user/tools/jdk1.5.0_22

首先,我嘗試將以下內容添加到我的 ~/.bashrc 文件中:

JAVA_HOME=/home/user/tools/jdk1.5.0_22
export JAVA_HOME
PATH=$PATH:$JAVA_HOME/bin
export PATH 

然後我重新啟動了我的終端,但我仍然得到:

user@ubuntu:~$ java -version
java version "1.7.0_25"
OpenJDK Runtime Environment (IcedTea 2.3.10) (7u25-2.3.10-1ubuntu0.13.04.2)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)

然後我嘗試添加JAVA_HOME/etc/environment

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

JAVA_HOME=/home/user/tools/jdk1.5.0_22

重新啟動終端后(關閉並打開一個新終端)java仍然指向jdk 7:

user@ubuntu:~$ java -version
java version "1.7.0_25"
OpenJDK Runtime Environment (IcedTea 2.3.10) (7u25-2.3.10-1ubuntu0.13.04.2)
OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)

但似乎設置了 JAVA_HOME:

user@ubuntu:~$ echo $JAVA_HOME
/home/user/tools/jdk1.5.0_22

如何更改我使用的 java 版本?

在您的 PATH 中找到的第一個 java 執行檔是/usr/bin/java,它可能是一個連結,/etc/alternatives/java也可能是/usr/lib/jvm/java-7-oracle/jre/bin/java.

您可以嘗試將 PATH 設置為在開始時使用新的 java 位置。你在最後添加它做了相反的事情。您應該嘗試過以下方法:

export PATH=/home/user/tools/jdk1.5.0_22/bin:$PATH

結合 JAVA_HOME 你應該沒問題,但另一種更 debian-ish(或 ubuntu-ish)的方法是使用該update-alternatives實用程序。

sudo update-alternatives --install /usr/bin/java java /home/user/tools/jdk1.5.0_22/bin/java 100
sudo update-alternatives --set java /home/user/tools/jdk1.5.0_22/bin/java

但是您需要對您打算從該安裝中使用的所有執行檔執行此操作。

有關更多詳細資訊,請參閱https://askubuntu.com/q/159575/11831

引用自:https://unix.stackexchange.com/questions/96519