Ubuntu服务器上如何检查OpenJDK的小版本更新
问题
当前Ubuntu服务器上使用OpenJDK,执行java -version输出如下:
# java -version openjdk version "18.0.2-ea" 2022-07-19 OpenJDK Runtime Environment (build 18.0.2-ea+9-Ubuntu-222.04) OpenJDK 64-Bit Server VM (build 18.0.2-ea+9-Ubuntu-222.04, mixed mode, sharing)
需要检查是否有OpenJDK的小版本更新(例如18.0.5或18.1.0,非Java 19等大版本),但搜索到的apt-get相关教程多为Java安装方法,缺少小版本检查与升级的具体步骤。
解决方法
1. 确认已安装的OpenJDK包名
Ubuntu下OpenJDK的包名通常为openjdk-18-jdk(完整JDK包)或openjdk-18-jre(仅运行环境),执行以下命令查看已安装的对应包:
dpkg --list | grep openjdk-18
输出会显示你当前安装的具体包名称,比如openjdk-18-jdk。
2. 检查该包的可用小版本更新
使用apt-cache policy命令查看目标包的版本信息,能明确区分大版本和小版本的可用更新:
apt-cache policy openjdk-18-jdk
典型输出示例:
openjdk-18-jdk: Installed: 18.0.2-ea+9-Ubuntu-222.04 Candidate: 18.0.5+9-Ubuntu-122.04 Version table: 18.0.5+9-Ubuntu-122.04 500 500 http://archive.ubuntu.com/ubuntu jammy-updates/universe amd64 Packages *** 18.0.2-ea+9-Ubuntu-222.04 100 100 /var/lib/dpkg/status
其中Candidate字段就是当前同大版本下的最新可用小版本,若其版本号高于已安装的Installed版本,说明存在小版本更新。
3. 升级到最新小版本
确认有更新后,执行以下命令升级(替换为你查到的包名):
sudo apt update && sudo apt install --only-upgrade openjdk-18-jdk
--only-upgrade参数会限制仅升级指定包,不会安装新的大版本或其他无关软件。
4. 验证升级结果
升级完成后,重新执行命令确认版本是否更新:
java -version
内容的提问来源于stack exchange,提问作者user1034461
相关产品推荐
相关产品推荐

