最可靠的是查看 java.home 属性,运行 java -xshowsettings:properties -version 2>&1 | grep 'java.home' 可得 jdk 根目录;其次检查 java_home 环境变量、展开 java 软链接路径或列出系统注册的 jdk。

直接看 java.home 属性最可靠,它由 JVM 自身报告,不依赖外部配置或符号链接。
用 Java 自带命令查(推荐)
运行这条命令就能拿到 JDK 根目录:
java -XshowSettings:properties -version 2>&1 | grep 'java.home'输出类似:
java.home = /usr/lib/jvm/java-17-openjdk-amd64
这个路径就是完整的 JDK 安装位置。
检查 JAVA_HOME 环境变量
如果系统或你本人配置过环境变量,这是最快的方式:
echo $JAVA_HOME- 有输出:通常就是 JDK 安装根目录(如
/usr/lib/jvm/java-1.8.0-openjdk) - 无输出:不代表没装 Java,只是没设这个变量,继续用其他方法查
追踪 java 可执行文件的真实路径
Linux/macOS 下,/usr/bin/java 往往是软链接,需展开才能看到真实位置:
在 Java 中初始化和管理阿里云 SDK客户端。包括单例模式、线程安全、endpoint 与 region 配置、VPC 终端节点、同步与异步等。
结果可能是:/usr/lib/jvm/java-11-openjdk-amd64/bin/java
再取上两级目录就是 JDK 根目录:
dirname $(dirname $(readlink -f $(which java)))查看系统已注册的 JDK 列表(多版本适用)
适用于装了多个 Java 版本的情况:
update-alternatives --list java或直接浏览常见安装目录:
ls -l /usr/lib/jvm/- Debian/Ubuntu 系统基本都在
/usr/lib/jvm/ - CentOS/RHEL 多在
/usr/java/ - macOS 通常为
/Library/Java/JavaVirtualMachines/
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










