Java 用于运行服务器、桌面应用程序、构建工具和开发框架。在 Ubuntu 24.04 上,您可以从标准存储库安装默认版本的 Java,或者当您的应用程序需要当前 LTS 版本时安装 Java 25。
本指南涵盖在 Ubuntu 24.04 上安装 OpenJDK 25、OpenJDK 21 和 Oracle JDK。它还解释了如何在已安装的版本之间切换并设置 JAVA_HOME 环境变量。
快速参考
| 任务 | 命令 |
|---|---|
| 安装 OpenJDK 25 | sudo apt install openjdk-25-jdk |
| 启用 Universe 存储库 | sudo add-apt-repository universe |
| 安装默认 JDK | sudo apt install default-jdk |
| 安装 OpenJDK 21 | sudo apt install openjdk-21-jdk |
| 检查 Java 版本 | java -version |
| 更改默认 Java | sudo update-alternatives --config java |
| 设置 JAVA_HOME | 添加到 /etc/environment |
| 卸载 Java 25 | sudo apt remove openjdk-25-jdk |
开始之前
有多种 Java 实现可供选择。OpenJDK 和 Oracle JDK 是最常见的两种选择。OpenJDK 是开源的,也是 Ubuntu 中的默认选项。Oracle JDK 由 Oracle 分发,拥有自己的许可条款,因此在使用它于生产环境之前请查看当前的许可证。
Ubuntu 24.04 存储库包含用于 Java 运行时环境 (JRE) 和 Java 开发工具包 (JDK) 的 OpenJDK 软件包。JRE 包括运行 Java 程序所需的 Java 虚拟机 (JVM) 和库。JDK 包括 JRE 以及构建 Java 应用程序的开发工具。
Ubuntu 24.04 使用 Java 21 作为 default-jdk 软件包,但 Ubuntu Universe 存储库也提供 Java 25。如果您不确定要安装哪个 Java 软件包,请先查看应用程序文档。当您的应用程序需要该版本时选择 Java 25,并坚持使用 Java 21 以与 Ubuntu 24.04 的默认设置保持兼容。
在 Ubuntu 中安装 OpenJDK
检查是否已安装 Java:
终端
java -version如果未安装 Java,输出将提示找不到该命令。否则,它将显示已安装的版本。
更新软件包索引:
终端
sudo apt updateJava 25 是当前长期支持 (LTS) 版本。在 Ubuntu 24.04 上,openjdk-25-jdk 软件包来自 Universe 存储库,并发布在 noble-updates 口袋中,而不是原始的 24.04 发布口袋。如果系统中找不到该软件包,请启用 Universe 并刷新软件包索引。如果仍然不可用,请按照故障排除部分中的说明检查您的存储库配置:
终端
sudo add-apt-repository universe
sudo apt update安装 OpenJDK 25:
终端
sudo apt install openjdk-25-jdk信息Ubuntu 24.04 上的 default-jdk 软件包安装的是 Java 21,而不是 Java 25。需要 Java 25 时请显式安装 openjdk-25-jdk。
验证安装:
终端
java -version输出
openjdk version "25.0.4" 2026-07-21
OpenJDK Runtime Environment (build 25.0.4+7-1-24.04-Ubuntu)
OpenJDK 64-Bit Server VM (build 25.0.4+7-1-24.04-Ubuntu, mixed mode, sharing)JRE 包含在 JDK 软件包中。如果您只需要 JRE,请安装 openjdk-25-jre 软件包。对于没有图形依赖的最小 Java 运行时,请安装 openjdk-25-jre-headless 软件包。
改为安装 Java 21
Java 21 是 Ubuntu 24.04 中的默认 Java 版本,对于尚未支持 Java 25 的应用程序来说仍然是一个不错的选择。要安装默认 JDK,请运行:
终端
sudo apt install default-jdk您也可以直接安装 OpenJDK 21:
终端
sudo apt install openjdk-21-jdk要安装其他可用版本,请替换版本号。例如,对于 Java 17 使用 openjdk-17-jdk。
在 Ubuntu 中安装 Oracle Java
Oracle JDK 不在默认 Ubuntu 存储库中提供。您可以通过从 Oracle 下载 .deb 软件包来安装它。
访问 Oracle Java 下载页面并选择您需要的版本。
在本示例中,我们将下载并安装 Java 25,因为它是当前的 LTS 版本。Oracle 还提供更新的特性版本,因此请选择您需要的版本的 Linux x64 Debian 软件包。

如果您在服务器上安装,请使用 wget 下载文件:
终端
wget https://download.oracle.com/java/25/latest/jdk-25_linux-x64_bin.deb安装软件包:
终端
sudo apt install./jdk-25_linux-x64_bin.deb如果您下载了其他版本,请替换文件名。
设置默认 Java 版本
如果您安装了多个 Java 版本,请检查当前默认版本:
终端
java -version在自动模式下,安装具有更高 alternatives 优先级的 JDK 会更改默认设置。在手动模式下,您选择的版本将被保留。
使用 update-alternatives 更改默认版本:
终端
sudo update-alternatives --config java您将看到已安装的 Java 版本列表:
输出
There are 3 choices for the alternative java (providing /usr/bin/java).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/lib/jvm/jdk-25.0.4.1-oracle-x64/bin/java 419464192 auto mode
1 /usr/lib/jvm/java-21-openjdk-amd64/bin/java 2111 manual mode
2 /usr/lib/jvm/java-25-openjdk-amd64/bin/java 2511 manual mode
3 /usr/lib/jvm/jdk-25.0.4.1-oracle-x64/bin/java 419464192 manual mode
Press <enter> to keep the current choice[*], or type selection number:输入您想设为默认的版本的编号并按 Enter。
Java 编译器具有单独的 alternatives。为 javac 选择相同的 JDK 版本:
终端
sudo update-alternatives --config javac验证运行时和编译器是否使用您选择的版本:
终端
java -version
javac -version设置 JAVA_HOME 环境变量
某些 Java 应用程序使用 JAVA_HOME 环境变量来确定 JDK 位置。
首先,查找 Java 安装路径:
终端
sudo update-alternatives --config java路径如下:
- Oracle JDK 25 位于
/usr/lib/jvm/jdk-25.0.4.1-oracle-x64/bin/java - OpenJDK 25 位于
/usr/lib/jvm/java-25-openjdk-amd64/bin/java - OpenJDK 21 位于
/usr/lib/jvm/java-21-openjdk-amd64/bin/java - OpenJDK 17 位于
/usr/lib/jvm/java-17-openjdk-amd64/bin/java
信息Java 二进制文件位于 JAVA_HOME/bin/java。将 JAVA_HOME 设置为上述路径,不包括 bin/java 部分。Oracle 目录名称包含完整的版本号,因此在复制路径之前请予以确认。
打开 /etc/environment 文件:
终端
sudo nano /etc/environment添加以下行(根据您的首选版本调整路径):
/etc/environmenttxt
JAVA_HOME="/usr/lib/jvm/java-25-openjdk-amd64"将更改应用到当前 shell 并导出变量,以便子进程可以读取它:
终端
source /etc/environment
export JAVA_HOME验证变量是否已导出:
终端
printenv JAVA_HOME输出
/usr/lib/jvm/java-25-openjdk-amd64此路径现在可用于从此 shell 启动的程序。注销并重新登录以在其他登录会话中获取系统范围的设置。
信息/etc/environment 是系统范围的。要为每个用户设置 JAVA_HOME,请将 export JAVA_HOME="/usr/lib/jvm/java-25-openjdk-amd64" 添加到 ~/.bashrc 或另一个 shell 配置文件,并根据您首选的 JDK 调整路径。加载该文件或打开新终端以应用它。
故障排除
无法找到软件包 openjdk-25-jdk
Java 25 软件包位于 Ubuntu Universe 存储库中。启用 Universe,更新软件包索引,然后重试:
终端
sudo add-apt-repository universe
sudo apt update
sudo apt install openjdk-25-jdk如果 APT 仍然找不到该包,请检查 /etc/apt/sources.list.d/ubuntu.sources。对于标准的 Ubuntu 24.04 源,Ubuntu 归档的 Suites: 行应包含 noble-updates,且 Components: 应包含 universe。如果您的系统使用 /etc/apt/sources.list 或 .list 文件,请检查 noble-updates 条目是否包含 universe。修正配置后,运行 sudo apt update 并再次尝试安装。
安装 Java 25 后仍显示版本 21
Java 21 可能仍被选为默认替代方案。运行 sudo update-alternatives --config java,选择 Java 25 路径,然后使用 java -version 再次检查。
构建工具报告必须将 Java 21 替换为版本 25 或更高版本
构建工具可能使用了与 java -version 所选不同的 JDK。从项目目录使用 mvn -v 检查 Maven,或使用 ./gradlew --version 检查 Gradle。设置并导出 JAVA_HOME 为 Java 25 JDK 目录。如果 Java 21 仍被选为您的 PATH,请按照上述方法切换 java 和 javac 替代方案。对于 Gradle,还需检查 org.gradle.java.home 和 gradle/gradle-daemon-jvm.properties,因为这些设置可以为构建选择不同的 JVM。
JAVA_HOME 指向错误的 Java 版本
使用 sudo update-alternatives --config java 检查所选的 Java 路径。将 JAVA_HOME 设置为不带 /bin/java 后缀的 JDK 目录,例如 /usr/lib/jvm/java-25-openjdk-amd64。
卸载 Java
像卸载任何其他包一样卸载 Java:
终端
sudo apt remove openjdk-25-jdk将包名称替换为您要移除的版本。