在 CentOS 系统上查看 Java 版本,有几种常用且有效的方法,这些命令可以告诉你当前系统默认使用的 Java 版本,以及所有已安装的 Java 版本。

使用 java -version 命令(最常用)
这是最直接、最常用的方法,它会显示当前系统默认 Java 的版本信息。
-
打开终端。
-
输入以下命令:
java -version
-
输出示例:
(图片来源网络,侵删)你可能会看到类似下面的输出:
# 示例 1: Oracle JDK java version "1.8.0_321" Java(TM) SE Runtime Environment (build 1.8.0_321-b07) Java HotSpot(TM) 64-Bit Server VM (build 25.321-b07, mixed mode) # 示例 2: OpenJDK openjdk version "11.0.16" 2025-07-19 OpenJDK Runtime Environment 18.9 (build 11.0.16+8) OpenJDK 64-Bit Server VM 18.9 (build 11.0.16+8, mixed mode, sharing) # 示例 3: 如果未安装 Java 或 JAVA_HOME 未配置 -bash: java: command not found
说明:
- 如果显示
command not found,说明你的系统中没有安装 Java,或者 Java 的安装路径没有被添加到系统的PATH环境变量中。 - 这个命令显示的是当前
PATH环境变量中找到的第一个java命令的版本,也就是默认的 Java 版本。
使用 javac -version 命令
这个命令用于查看 Java 编译器的版本,Java 运行时环境 和 Java 开发工具包 的版本是一致的,所以这个命令也能帮你确认 Java 版本。
javac -version
输出示例:

javac 1.8.0_321
检查 JAVA_HOME 环境变量
JAVA_HOME 是一个非常重要的环境变量,很多 Java 应用服务器(如 Tomcat, JBoss)和构建工具(如 Maven, Gradle)依赖它来找到 Java 的安装路径,检查 JAVA_HOME 可以帮助你确认 Java 的安装位置。
-
查看
JAVA_HOME是否已设置:echo $JAVA_HOME
-
输出示例:
- 如果已设置,会输出 Java 的安装路径,
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-1.el7_9.x86_64
- 如果未设置,将不会有任何输出。
- 如果已设置,会输出 Java 的安装路径,
-
JAVA_HOME已设置,可以进一步检查该路径下的版本:$JAVA_HOME/bin/java -version
这会显示
JAVA_HOME指向的 Java 版本,与方法一的结果通常一致。
列出所有已安装的 Java 版本
在 CentOS 上,Java 通常通过 yum 或 dnf 包管理器安装,使用这些工具可以列出所有已安装的 Java 相关软件包。
-
使用
yum(适用于 CentOS 7 及更早版本):yum list installed | grep java
-
使用
dnf(适用于 CentOS 8 及更新版本):dnf list installed | grep java
输出示例:
java-1.8.0-openjdk.x86_64 1:1.8.0.322.b06-1.el7_9 @updates java-1.8.0-openjdk-devel.x86_64 1:1.8.0.322.b06-1.el7_9 @updates java-11-openjdk.x86_64 1:11.0.16.0.1-1.el7_9 @updates
这个输出清晰地显示了系统中安装了哪些 Java 版本(如 java-1.8.0-openjdk 和 java-11-openjdk)以及它们的开发工具包(devel)。
如何切换 Java 版本?
如果你的系统上安装了多个 Java 版本(JDK 8 和 JDK 11),你可能需要切换默认使用的版本,在 CentOS 上,最推荐的方式是使用 alternatives 工具。
-
查看系统可用的 Java 版本:
sudo alternatives --config java
-
系统会列出所有已知的 Java 版本供你选择:
There are 2 programs which provide 'java'. Selection Command ----------------------------------------------- 1 /usr/lib/jvm/java-11-openjdk-11.0.16.0.1-1.el7_9.x86_64/bin/java *+ 2 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-1.el7_9.x86_64/bin/java Enter to keep the current selection[+], or type selection number:
号表示当前正在使用的版本。
-
输入你想要切换到的版本的编号,然后按回车:
要切换到 JDK 11,就输入
1并回车。 -
同样,你也可以为
javac和javadoc等工具切换版本:sudo alternatives --config javac
| 命令 | 用途 | 优点 |
|---|---|---|
java -version |
查看当前默认的 Java 运行时版本 | 最常用,最直接 |
javac -version |
查看当前默认的 Java 编译器版本 | 确认开发环境版本 |
echo $JAVA_HOME |
查看 Java 的安装路径 | 诊断环境变量问题 |
yum/dnf list installed \| grep java |
列出系统所有已安装的 Java 包 | 全面了解系统中的 Java 版本 |
sudo alternatives --config java |
切换默认的 Java 版本 | 管理多 Java 版本的标准方法 |
对于日常检查,java -version 就足够了,如果你需要管理多个版本,yum/dnf list installed | grep java 和 sudo alternatives --config java 是你的最佳工具。
