Ubuntu 多版本 JDK 管理文档
注意: 默认apt安装的jdk是自动加入到版本管理的 可以直接看管理版本的部分
目的
指导如何在 Ubuntu 系统中安装和管理多个版本的 JDK(1.8、11、17、21),并使用 update-alternatives
切换默认 JDK 版本。
前提条件
- 用户具备
sudo
权限。 - 系统已安装多个 JDK 版本。
安装 update-alternatives
update-alternatives
工具默认随 Ubuntu 系统安装。如果该命令不可用,可以通过以下命令安装 dpkg
,该包包含 update-alternatives
工具:
sudo apt update
sudo apt install dpkg
安装 JDK 版本
安装 OpenJDK 1.8
sudo apt update
sudo apt install openjdk-8-jdk
安装 OpenJDK 11
sudo apt update
sudo apt install openjdk-11-jdk
安装 OpenJDK 17
sudo apt update
sudo apt install openjdk-17-jdk
安装 OpenJDK 21
sudo apt update
sudo apt install openjdk-21-jdk
使用 update-alternatives
管理 JDK
添加 JDK 到 update-alternatives
每次安装新的 JDK 版本时,需通过 update-alternatives
命令将其添加到系统。
添加 JDK 1.8:
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-8-openjdk-amd64/bin/java 1081
添加 JDK 11:
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111
添加 JDK 17:
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-17-openjdk-amd64/bin/java 1717
添加 JDK 21:
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-21-openjdk-amd64/bin/java 2121
手动选择默认 JDK
通过以下命令选择默认的 JDK 版本:
sudo update-alternatives --config java
执行后,系统会列出所有已安装的 JDK 版本,并提示选择。输入相应数字选择所需版本。例如:
There are 4 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-8-openjdk-amd64/bin/java 1081 auto mode
1 /usr/lib/jvm/java-8-openjdk-amd64/bin/java 1081 manual mode
* 2 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 manual mode
3 /usr/lib/jvm/java-17-openjdk-amd64/bin/java 1717 manual mode
4 /usr/lib/jvm/java-21-openjdk-amd64/bin/java 2121 manual mode
Press <enter> to keep the current choice[*], or type selection number:
输入数字选择 JDK 版本(例如 3
选择 JDK 17)。
配置 javac
(Java 编译器)
同样可以管理 Java 编译器 javac
版本:
sudo update-alternatives --config javac
自动选择优先级最高的 JDK
可以通过以下命令自动选择优先级最高的 JDK 版本:
sudo update-alternatives --auto java
类似地,使用以下命令配置 javac
自动选择:
sudo update-alternatives --auto javac
移除 JDK 版本
使用 update-alternatives --remove
命令将 JDK 从 update-alternatives
管理中移除,但该版本的 JDK 仍然保留在系统中。示例如下:
sudo update-alternatives --remove java /usr/lib/jvm/java-8-openjdk-amd64/bin/java
如果需要完全删除某个 JDK 版本及其文件,可以使用 apt
卸载命令:
sudo apt remove openjdk-8-jdk
总结
- 安装 JDK:使用
apt
安装 OpenJDK 1.8、11、17 和 21。 - 管理 JDK 版本:使用
update-alternatives
添加、配置和切换 JDK 版本。 - 选择默认 JDK:使用
update-alternatives --config java
手动选择默认 JDK,或使用--auto
自动选择优先级最高的 JDK。 - 移除 JDK:通过
update-alternatives --remove
只移除管理,若要完全删除 JDK,请使用apt remove
。
此方法适用于多版本 JDK 的管理,确保不同 Java 项目可以使用所需的版本。
评论区