如何将Ubuntu中的JAVA_HOME
值更改为指向Oracle的Java?
它应该指向java-6-sun
还是java-6-sun-1.6.0.24
?
发布于 2011-06-25 19:34:03
我把这句话写成:
export JAVA_HOME=/usr/lib/jvm/java-7-oracle
在我的~/.bashrc
文件中。
/usr/lib/jvm/java7-oracle
应该是指向/usr/lib/jvm/java-7-oracle-[version number here]
的符号链接。
它是一个符号链接的原因是,如果有新版本的JVM,您不需要更新您的.bashrc
文件,它应该自动指向新版本。
如果你想在全局和系统级别设置JAVA_HOME
环境变量,意味着应该在/etc/environment
文件中设置。
发布于 2012-11-06 16:38:40
如果您想要在全局和系统级别进行更改;
在……里面
/etc/environment
添加下面这行:
JAVA_HOME=/usr/lib/jvm/java-7-oracle
发布于 2014-05-14 12:10:28
要将Oracle的Java SE开发工具包设置为系统默认Java,只需从here下载最新的Java SE开发工具包,然后在文件系统中创建一个您喜欢的目录,例如/usr/java
,现在将您刚刚下载的文件解压到该目录中:
$ sudo tar xvzf jdk-8u5-linux-i586.tar.gz -C /usr/java
现在设置您的JAVA_HOME
环境变量:
$ JAVA_HOME=/usr/java/jdk1.8.0_05/
$ sudo update-alternatives --install /usr/bin/java java ${JAVA_HOME%*/}/bin/java 20000
$ sudo update-alternatives --install /usr/bin/javac javac ${JAVA_HOME%*/}/bin/javac 20000
确保通过以下方式将Oracle的java设置为默认java:
$ update-alternatives --config java
你会得到类似这样的结果:
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
* 0 /opt/java/jdk1.8.0_05/bin/java 20000 auto mode
1 /opt/java/jdk1.8.0_05/bin/java 20000 manual mode
2 /usr/lib/jvm/java-6-openjdk-i386/jre/bin/java 1061 manual mode
Press enter to keep the current choice[*], or type selection number:
注意左边数字前面的星号,如果没有设置正确的数字,则通过键入数字并按enter键选择正确的数字。现在测试你的java:
$ java -version
如果你得到了如下代码,你就可以开始工作了:
java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) Server VM (build 25.5-b02, mixed mode)
还请注意,您可能需要root权限或处于sudoers组中才能执行此操作。我已经在ubuntu 12.04和Debian wheezy上测试了这个解决方案,它在这两个平台上都能工作。
https://stackoverflow.com/questions/6477415
复制相似问题