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

 抵制日货2502901143 发布于 2023-02-02 22:28

下载最新的.tar文件后,我跑去tar zxvf jdk-7u45-linux-x64.tar.gz提取java文件.

.bashrcfile(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

Atropo.. 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

您将被要求在我的系统上选择您要使用的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手册页.

4 个回答
  • 你可能想做

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

    OpenJDK可能仍在路径中,Linux将使用java它找到的第一个.

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

    2023-02-02 22:38 回答
  • 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:您可以使用此答案

    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.

    2023-02-02 22:39 回答
  • 尝试在终端中键入以下内容.

    sudo update-alternatives --config java

    输出将是一些选择,您可以选择安装到您的计算机的正确的一个.

    2023-02-02 22:39 回答
  • 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
    

    您将被要求在我的系统上选择您要使用的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手册页.

    2023-02-02 22:47 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有