Linux下OpenJDK与OracleJDK1.8共存与切换(安装JDK1.8)_jdk1.8对应openjdk版本-CSDN博客

来源: Linux下OpenJDK与OracleJDK1.8共存与切换(安装JDK1.8)_jdk1.8对应openjdk版本-CSDN博客

首先我的系统自带了OpenJDK 11.0.12;我使用Java -version命令查看的

……PC:~/桌面$ java -version
openjdk version “11.0.12” 2021-07-20
OpenJDK Runtime Environment (build 11.0.12+7-post-Debian-2)
OpenJDK 64-Bit Server VM (build 11.0.12+7-post-Debian-2, mixed mode, sharing)
现在我们需要安装OracleJDK1.8,

安装前需要先确认我们的机器架构;使用命令:uname -m

……PC:~/桌面$ uname -m

x86_64
从上面的回复我们可以看到我们的架构为64位的。所以我们需要到官网上下载相关的软件包。

官网地址:Java Downloads | Oracle 中国

我选择的是:x64 Compressed Archive(请根据实际情况选择)

然后使用解压缩命令解压到:/usr/java/ 下(当然,每个人的安装路径不一样,视情况而选择),如果 /usr/ 下没有java目录,请使用命令:mkdir 来创建

解压命令:

tar -zxvf ……(省略号是你下载的包名)
解压到/usr/java/下

接下来需要配置环境变量了,使用一下命令打开文件:

sudo vi /etc/profile
在文件末尾插入命令:

export JAVA_HOME=/usr/java/jdk1.8.0_431
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}
当然配置完成后需要使用命令:source /etc/profile 来重新加载配置。你以为就完了,哈哈,当你使用 java -version 的时候会发现系统默认的还是OpenJDK。所以下面是配置的关键。

在使用这之前请允许我啰嗦一下命令的说明:update-alternatives 是一个在 Linux 系统(尤其是 Debian 系列,包括 Ubuntu)上用于管理多个相同功能的软件版本的命令。它让你可以在系统中安装多个版本的同一个程序(例如多个版本的JAVA 或者GCC),并通过 优先级 和 符号链接 来控制默认使用哪个版本。

所以我们需要使用次命令做一下配置:

sudo update-alternatives –install /usr/bin/java java /usr/java/jdk1.8.0_431/bin/java 100

sudo update-alternatives –install /usr/bin/javac javac /usr/java/jdk1.8.0_431/bin/javac 100

配置完成后就到了切换版本的时候了,输入以下命令:

sudo update-alternatives –config java
你会看到:

……-PC:/usr/lib/jvm$ sudo update-alternatives –config java
有 2 个候选项可用于替换 java (提供 /usr/bin/java)。

选择 路径 优先级 状态
————————————————————
* 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 自动模式
1 /usr/java/jdk1.8.0_431/bin/java 100 手动模式
2 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 手动模式

要维持当前值[*]请按<回车键>,或者键入选择的编号:1
根据需要去选择相应选择下的数据即可切换。

注意:你目前只切换了java的,还需要再切换一次javaC的

sudo update-alternatives –config javac
至此配置完成,请记住以后需要切换的时候请使用命令:sudo update-alternatives –config *** 来进行版本切换。

切换完成后可以使用:java -version 与 javac -version 来看看是否切换过来。
————————————————

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/wangyuan052/article/details/144268777

赞(0) 打赏
分享到: 更多 (0)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏