我想更改 Debian 7.1.0 系统的 PATH 以链接到我想要的 Java 版本。如果我在终端输入:
java -version
我得到:
java version "1.6.0_27"
OpenJDK Runtime Environment (IcedTea6 1.12.6) (6b27-1.12.6-1~deb7u1)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)
这是我的发行版预装的 Java 版本。我现在已经下载了 Sun JDK 1.7.0 update 25。我希望我的系统使用此版本而不是预安装的版本。我对我的PATH
in进行了两处更改.bashrc
,但仍然拥有相同的 Java 版本。
我的.bashrc
文件包含以下行:
PATH="PATH":/usr/local/jdk1.7.0_25
export PATH
答案1
你真正想要的是你的这个~/.profile
(或者.bashrc
如果你坚持,但是.profile
是更好的):
PATH=$PATH:/usr/local/jdk1.7.0_25/bin
export PATH
您丢失了原始的 $PATH 因为您使用的是"PATH"
而不是$PATH
所以它被解释为一个简单的字符串,您所做的就是将路径设置为:
PATH:/usr/local/jdk1.7.0_25/bin
答案2
您可能需要 oracle java bin前置的(未附加)到您的路径:
export PATH=/usr/local/jdk1.7.0_25/bin:$PATH
由于执行路径是检查的目录列表为了(所以如果你附加jdk7 bin 到 $PATH,首先找到发行版 java)。
我丢失了原来的 PATH 以及使用所有命令的可能性
注意这两者之间的区别:
PATH=$PATH
PATH=PATH
当你分配对于 shell 变量,仅使用单词PATH
.当您引用 shell 变量时,必须在其前面加上$
.例如:
FOO="hello"
FOO=$FOO" world"
$FOO
现在等于“你好世界”。但:
FOO="hello"
FOO=FOO" world"
$FOO
现在等于“FOO世界”。
不要覆盖$PATH
——追加或前置。
答案3
除了 和 之外~/.profile
,~/.bashrc
还可以通过以下方式设置 Java 路径
/etc/profile.d/jdk.sh
如果你看一下/etc/profile
,你会发现它来源了里面的所有脚本/etc/profile.d/
。