Ubuntu同时安装JDK8和JDK17

Ubuntu系统同时安装JDK8和JDK17

一、安装前准备

  1. 打开终端 ,先更新系统包列表。

sudo apt update

二、安装JDK8和JDK17

Ubuntu 官方源中提供了 OpenJDK(开源版 JDK),这是最推荐的安装方式,无需手动配置环境变量。

  1. 安装JDK8

sudo apt install -y openjdk-8-jdk
  1. 安装JDK17

sudo apt install -y openjdk-17-jdk

三、验证安装

安装完成后,先检查是否安装成功:

# 查看 JDK 8 版本
java -version  # 此时可能显示默认版本,先别急
javac -version

# 也可以直接指定路径查看对应版本
/usr/lib/jvm/java-8-openjdk-amd64/bin/java -version
/usr/lib/jvm/java-17-openjdk-amd64/bin/java -version

四、切换默认JDK版本

Ubuntu 提供了 update-alternatives 工具,可以轻松管理系统默认的 JDK:
1.配置Java可执行文件

sudo update-alternatives --config java

执行后看到类似输出

有 2 个候选项可用于替换 java (提供 /usr/bin/java)。

  选择    路径                                            优先级  状态
------------------------------------------------------------
* 0            /usr/lib/jvm/java-17-openjdk-amd64/bin/java   1711      自动模式
  1            /usr/lib/jvm/java-8-openjdk-amd64/bin/java    1081      手动模式
  2            /usr/lib/jvm/java-17-openjdk-amd64/bin/java   1711      手动模式

要维持当前值[*]请按回车键,或者键入选择的编号:
  • 输入对应数字(比如想切换到JDK8就输入1),按回车即可。

在这里插入图片描述

2.配置Javac(编译器)

仅切换Java还不够,编译代码需要同步切换Javac

sudo update-alternatives --config javac

操作方式和上面一样,选择对应版本的编号即可。

3.验证切换结果

java -version  # 显示你选择的默认版本
javac -version

五、临时切换JDK(不修改系统默认)

如果只是临时想用某个版本(比如当前终端会话用 JDK 17,系统默认还是 JDK 8),可以直接指定路径:

# 临时使用 JDK 17
/usr/lib/jvm/java-17-openjdk-amd64/bin/java -version

# 临时使用 JDK 8
/usr/lib/jvm/java-8-openjdk-amd64/bin/java -version

也可以通过设置环境变量临时切换(仅当前终端有效):

# 切换到 JDK 8
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH

# 验证
echo $JAVA_HOME
java -version

六、手动配置JAVA_HOME(可选)

如果需要永久设置JAVA_HOME,可以编辑**/etc/profile~./bashrc**

# 编辑用户级配置(仅当前用户生效)
nano ~/.bashrc

在文件末尾添加:

# JDK 8 路径
export JAVA_8_HOME=/usr/lib/jvm/java-8-openjdk-amd64
# JDK 17 路径
export JAVA_17_HOME=/usr/lib/jvm/java-17-openjdk-amd64
# 默认使用 JDK 8(可根据需要修改)
export JAVA_HOME=$JAVA_8_HOME
export PATH=$JAVA_HOME/bin:$PATH

保存退出(Ctrl+O → 回车 → Ctrl+X),然后生效配置:

source ~/.bashrc

https://blog.csdn.net/lrenyan/article/details/155692128?spm=1011.2415.3001.10575&sharefrom=mp_manage_link

评论