下载最新的.tar文件后,我运行了tar zxvf jdk-7u45-linux-x64.tar.gz
来提取java文件。
在.bashrc
文件(vi ~/.bashrc
)中设置路径,如下所示;
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_45/bin/java
export PATH=$PATH:/usr/lib/jvm/jdk1.7.0_45/bin
export JDK_HOME=/usr/lib/jvm/jdk1.7.0_45
export JRE_HOME=/usr/lib/jvm/jre1.7.0_45
现在,运行命令java -version
或java,java PATH仍然指向较旧的java版本(java version "1.6.0_27"
)。
我知道默认的ubuntu采用OpenJDK路径。我必须将路径更改为.bashrc
文件中设置的系统环境变量的最新版本。
此外,sudo update-alternatives --config java
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-7-oracle/jre/bin/java 1062 auto mode
1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode
2 /usr/lib/jvm/java-7-oracle/jre/bin/java 1062 manual mode
* 3 /usr/lib/jvm/jdk1.7.0_45/bin/java 1 manual mode
Press enter to keep the current choice[*], or type selection number: 3
答案 0 :(得分:38)
Ubuntu(和Debian)有一种优雅的方式来管理像jdk
这样的库。
使用update-alternatives
,您可以在同一系统上管理多个jdk
库,选择要用作主要库的库。
首先,您必须为新安装的jdk安装替代方案:
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0_45/bin/java" 1
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0_45/bin/javac" 1
通过这种方式,您可以安装新的jdk
作为原始sudo update-alternatives --config java
sudo update-alternatives --config javac
的替代方案。
然后你可以选择你要使用的那个:
There are 2 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-6-openjdk-i386/jre/bin/java 1061 auto mode
1 /usr/lib/jvm/java-6-openjdk-i386/jre/bin/java 1061 manual mode
* 2 /usr/lib/jvm/java-7-openjdk-i386/jre/bin/java 1051 manual mode
Press enter to keep the current choice[*], or type selection number:
您将被要求在我的系统上选择您要使用的jdk:
java
您可以随时使用javac
选项查看--list
或sudo update-alternatives --list java
sudo update-alternatives --list javac
的替代方案:
update-alternatives
要查看更多选项,请查看{{1}}手册页。
答案 1 :(得分:8)
您可能想要
export PATH=/usr/lib/jvm/jdk1.7.0_45/bin:$PATH
OpenJDK可能仍在路径中,Linux将使用它找到的第一个java
。
如果您不需要,我建议您卸载OpenJDK。
答案 2 :(得分:7)
运行
sudo update-java-alternatives --list
按名称和目录列出计算机上的所有Java安装,然后运行
sudo update-java-alternatives --set [JDK/JRE name e.g. java-8-oracle]
选择要使用的JRE / JDK。
如果要为每个Java任务使用不同的JDK / JRE,可以运行update-alternatives来一次配置一个java可执行文件;你可以运行
sudo update-alternatives --config java[Tab]
查看可配置的Java命令(java,javac,javah,javaws等)。然后
sudo update-alternatives --config [javac|java|javadoc|etc.]
会将该Java任务/命令与特定的JDK / JRE相关联。
您可能还需要为某些应用程序设置JAVA_HOME:从this answer您可以使用
export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")
表示JRE,或
export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:jre/bin/java::")
用于JDK。
答案 3 :(得分:5)
尝试在终端中键入以下内容。
sudo update-alternatives --config java
输出将是一些选择,您可以选择安装到计算机的正确选项。
答案 4 :(得分:4)