在Linux系统中查找已安装的JDK(Java Development Kit)目录,有几种常用的方法。以下是其中的一些:
使用 `which` 和 `readlink f`
如果仅想知道运行哪个 `java` 的路径,并不是 JDK 安装目录,可以使用 `which java` 查看,再用以下命令来获取其真实路径:
sh
readlink f $(which java)
但这种方法只能显示你当前使用的Java可执行文件的位置。
查找 `java` 执行文件的真实路径
更详细地查找 `java` 可执行文件路径并指向其实际目录,可以通过下面的步骤进一步定位:
sh
updatealternatives display java | grep 'current' | awk F"\"" '{print $2}'
或者简化一点:
sh
ls l /etc/alternatives/java
这能让你找到 `/usr/lib/jvm/` 下的一个链接。
查找 JDK 安装目录
如果你需要找到完整的 JDK 软件包所在的实际位置,比如 `jdkxx` 类似的,可以用下面的方式来查找:
方法一:检查 `JAVA_HOME`
通常情况下, 如果系统上正确配置了 `JAVA_HOME` ,你可以通过它直接知道 JDK 的路径。
查看或设置 `JAVA_HOME`:
bash
echo $JAVA_HOME
如果该环境变量存在的话, 会显示出安装路径。
方法二:列出所有 JDK 版本目录
查找所有的 Java 和 JDK 安装版本:
bash
updatealternatives list java
接着,导航到这些列出链接指向的目录以查看它们是否包含一个 JDK:
假设 `readlink` 给出的目录为 `/usr/lib/jvm/javaversion/`,则:
bash
dirname `updatealternatives config java | sed nr 's/.\s(.+jvm\/java[78])./\1/p'`/
或者简单手动查看相关目录是否存在 `jdk`:
sh
cd /usr/lib/jvm; ls
检查输出中是否有以 jdk 开头的内容。
方法三:直接从常见的已知位置搜索 JAR 或其他 Java 工具:
由于许多 Java 目录下会有工具 jar 包,我们可以尝试在常见的 Java/JDK 安装点寻找 jar 文件。对于 Debian/Ubuntu 或 RedHat/CentOS 类系统:
sh
在Debian/Ubuntu上:
apt list installed | grep jdk
查找 jdk
dpkg L openjdkversionjdk|grep libjlijava
对 RedHat/CentOS 使用:
rpm qa | grep jdk 安装后查询所有匹配 "jdk" 包名
如果能找到对应的包信息,则其提供的文件目录可视为 JDK 路径.
希望上述方法之一能帮助您发现 JDK 的确切位置!
发表评论