Rhel

替代方案 java -OpenJDK RHEL

  • July 14, 2020

我有以下設置(在多台使用 RHEL7 的機器上):


$ which java 
/usr/bin/java

$ ls -ltr /usr/bin/java 
/usr/bin/java -> /etc/alternatives/java

$ ls -ltr /etc/alternatives/java
/etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242b08-1.e17.x86_64/jre/bin/java

$ echo $JAVA_HOME
/etc/alternatives/jre_1.8.0_openjdk

$ ls -ltr /etc/alternatives/jre_1.8.0_openjdk
/etc/alternatives/jre_1.8.0_openjdk -> /usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.242-1.e17.x86_64

我需要更新到版本,所以我從 artifactory 中獲取251了相應的版本,將其解壓縮,現在我需要更新所有 simlink 以使用最新的 java 版本。.tar.gz /usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.251

使用我所做的替代方法的手冊頁:

alternatives --install /usr/bin/java java /usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.251/bin/java

哪個修改/etc/alternatives/java但由於$JAVA_HOME=/etc/alternatives/jre_1.8.0_openjdk我需要修改/更新/etc/alternatives/jre_1.8.0_openjdk

我不知道該放什麼<link>alternatives --install <link> <name> <path> <priority>更新/etc/alternatives/jre_1.8.0_openjdk

我什至不確定這是更新 java 版本的正確方法。謝謝

這是在替代系統中手動插入替代的正確方法。

您的alternatives工具是原始 Debianupdate-alternatives工具的移植版。使用該工具和您的埠,有

更新替代品--顯示 jre_1.8.0_openjdk

這應該告訴您與 . 一起使用的“通用名稱” --install。vanilla Debian 工具也有

更新替代品--查詢 jre_1.8.0_openjdk

對於可以在管道中使用的機器可讀形式,但是您的系統沒有。 **但是:**在 RHEL 上,Java 安裝安裝時帶有--slave選項,--install以便 JRE 與java程序同步切換。事實上,--slave軟體包的安裝腳本設置了 20 到 50 個選項。例如AdoptOpenJDK 中的 OpenJDK 安裝後腳本模板之類的例子(它甚至沒有設置 JRE 替代方案,請注意)。

真的,這不是您能夠建構的、無錯誤的、手寫的,以匹配您已經擁有的東西。不要從原始 TAR 檔案下載和安裝。使用軟體包。

引用自:https://unix.stackexchange.com/questions/598351