我刚刚安装了 openjdk-8-jdk。我已经安装了 openjdk-7-jdk。当我运行 时echo $JAVA_HOME
,它打印了/usr/lib/jvm/java-7-openjdk-amd64
。
因此,我尝试更改 $JAVA_HOME 变量,但每次我重新打开终端时,它都会重置为上述路径。我尝试过设置它,/etc/enviroment
/etc/profile
/etc/bash.bashrc
~/.bashrc
但无济于事。
我该如何更改它?另外,$JAVA_HOME 当前设置在哪里?
答案1
登录您的帐户并打开.bash_profile
文件
$ vi ~/.bash_profile
使用语法设置JAVA_HOME
如下export JAVA_HOME=<path-to-java-bin-directory>/java
如果您希望无需注销即可使更改生效,请输入以下命令:
$ source ~/.bash_profile
答案2
如果您在 /etc/environment 中进行更改,则更改将仅针对当前会话。/etc/profile 是永久更新路径的正确位置。您需要在 /etc 下的配置文件中进行更改
按照以下步骤操作。这应该可以解决您的问题
sudo vim /etc/profile
添加以下两行:
export JAVA_HOME="Your path to jdk folder"
export PATH=$JAVA_HOME/bin:$PATH
要立即应用更改,请运行以下命令:
source /etc/profile
在下次系统重启时将自动选择更改。
答案3
如果可以的话,您不应该自己设置。要更改要使用的 Java 版本,请参阅此指导。
片段:
如果您的系统有多个 Java 版本,请在终端窗口中输入以下命令来配置系统使用的版本
sudo update-alternatives --config java
这将为您显示与以下内容类似的选择(详细信息可能有所不同):
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
————————————————————
* 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 auto mode
1 /usr/lib/jvm/jre1.7.0/jre/bin/java 3 manual mode
Press enter to keep the current choice[*], or type selection number: 1
答案4
我明白了。这是我犯的一个荒唐错误。
由于我设置JAVA_HOME
了这么多文件,在一片混乱中我将其设置为/usr/lib/jvm/java-7-openjdk-amd64
。~/.bashrc
因此每次我打开终端时,无论所有其他文件中的内容是什么,它都会更改为此,因为~/.bashrc
每次打开终端时都会运行。