在我们使用 Oracle JDK 之前,在其安装过程中,它创建了符号链接“/usr/java/latest”
我注意到 OpenJDK 在其安装过程中默认不这样做 - 有什么原因吗?
我们的很多应用程序都需要这条路径。现在我可以在安装完成后手动创建它,但很好奇为什么 OpenJDK 不自动创建它。谢谢
在我们使用 Oracle JDK 之前,在其安装过程中,它创建了符号链接“/usr/java/latest”
我注意到 OpenJDK 在其安装过程中默认不这样做 - 有什么原因吗?
我们的很多应用程序都需要这条路径。现在我可以在安装完成后手动创建它,但很好奇为什么 OpenJDK 不自动创建它。谢谢
未完成的一个基本原因是它/usr/java
超出了File Hierarchy Standard。换句话说,这是一条完全不标准的路径。那么为什么要使用它呢?
对于像 RHEL 这样的发行版,这也是一条不明确的路径:它会指向 JDK 还是 JRE?哪个版本(假设 8、9、10 和 11 都引入了不兼容性)?
RHEL 7 中的 OpenJDK 使用Alternatives(8)来提供类似的路径。如果你没有修改alternative
s,指向最新版本。例如:
/usr/lib/jvm/java
指向默认(默认为最新)JDK/usr/lib/jvm/java-1.8.0
指向默认(默认为最新)JDK 8/usr/lib/jvm/jre
指向默认的(默认为最新的)JRE,并且可能指向发布的较新版本。/usr/lib/jvm/jre-openjdk/
指向默认(默认为最新)OpenJDK JRE(相对于 Oracle 或 IBM 的 JRE)。它可能指向较新(不兼容)的版本,因为它们是 release.d