Ubuntu:将路径从 OpenJDK 6 更改为 Oracle JDK 7

2022-09-02 02:23:22

下载最新的.tar文件后,我运行以提取java文件。tar zxvf jdk-7u45-linux-x64.tar.gz

在文件()中设置路径,如下所示;.bashrcvi ~/.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,java PATH仍然指向较旧的java版本()。java -versionjava 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

答案 1

Ubuntu(和 Debian)有一种优雅的方法来管理库,比如 .jdk

使用,您可以在同一系统上管理多个库,选择要用作主库的库。update-alternativesjdk

首先,您必须为新安装的 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

系统将要求您选择要使用的jdk,在我的系统上,我有:

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: 

您可以随时查看您有哪些替代方案或使用该选项:javajavac--list

sudo update-alternatives --list java
sudo update-alternatives --list javac

要查看更多选项,请查看手册页。update-alternatives


答案 2

你可能想做

export PATH=/usr/lib/jvm/jdk1.7.0_45/bin:$PATH

OpenJDK可能仍然在这条路上,Linux将使用它找到的第一个。java

如果你不需要它,我建议你卸载OpenJDK。


推荐