我想在Ubuntu中变成JAVA 8。编辑.bashrc不会改变JAVA_HOME
我在〜/ .bashrc和/ etc/environment中更改了JAVA_HOME,并找到了它。这导致JAVA_HOME改变。
[email protected]:~/Desktop$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/jvm/jre1.8.0_45/bin:/home/PepperBoy/Desktop/hadoopinstallation/hadoop-1.2.1/bin
[email protected]:~/Desktop$ echo $JAVA_HOME
/usr/lib/jvm/jre1.8.0_45
[email protected]:~/Desktop$ cat /etc/environment
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
export JAVA_HOME="/usr/lib/jvm/jre1.8.0_45/bin/"
但是,我的Java版本仍然保持显示早期版本。
[email protected]:~/Desktop$ java -version
java version "1.7.0_75"
OpenJDK Runtime Environment (IcedTea 2.5.4) (7u75-2.5.4-1~precise1)
OpenJDK 64-Bit Server VM (build 24.75-b04, mixed mode)
Also, running the below commmand only gives me options for java 6 and 7, not for java 8
[email protected]:~/Desktop$ 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-amd64/jre/bin/java 1061 auto mode
1 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 manual mode
* 2 /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 1051 manual mode
Press enter to keep the current choice[*], or type selection number:
最后,运行下面的代码给了我指向系统正在使用的实际java可执行文件的符号链接。我编辑了这个到我下载的java 8,现在我的java -version显示了正确的版本。
[email protected]:~/Desktop$ which java
/usr/bin/java
[email protected]:~/Desktop$ ls -l /usr/bin/java
lrwxrwxrwx 1 root root 22 Apr 29 2014 /usr/bin/java -> /etc/alternatives/java
[email protected]:~/Desktop$ ls -l /etc/alternatives/java
lrwxrwxrwx 1 root root 46 Oct 17 2014 /etc/alternatives/java -> /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java
我的问题是:
- 如果这是导致变化的唯一的编辑,那么为什么我们 编辑〜/ .bashrc中。看起来我所要做的就是在linux中运行which或whereis命令,它告诉我/ usr/bin/java是系统正在运行的实际可执行文件,然后编辑这个指向新的java版本下载
检查你的.profile文件为JAVA_HOME – Steephen
在/ etc/profile中添加PATH – Asfab