複数のJavaを切り替えて使用するには alternativesコマンド を使用します。
使い方は次のとおり。今回は Java8 と Java11 がインストールされた環境で Java の切り替えを行います。+ の付いている方が有効になっている方で、今有効なのは Java8 です。どちらを有効にするか選択を求められますので、Java11 を有効にするため 2 を選択します。
# alternatives --config java There are 2 programs which provide 'java'. Selection Command ----------------------------------------------- *+ 1 java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.352.b08-2.el7_9.x86_64/jre/bin/java) 2 java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.17.0.8-2.el7_9.x86_64/bin/java) Enter to keep the current selection[+], or type selection number: 2
設定完了すると特に何も表示されません。
きちんと設定されたか、もう一度 alternativesコマンド を実行して確認します。
# alternatives --config java There are 2 programs which provide 'java'. Selection Command ----------------------------------------------- * 1 java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.352.b08-2.el7_9.x86_64/jre/bin/java) + 2 java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.17.0.8-2.el7_9.x86_64/bin/java) Enter to keep the current selection[+], or type selection number:
+ が Java11 の方に表示されていて、きちんと設定されていることが確認できました。
次の Javaコマンドで有効になっているバージョンを確認します。
# java -version openjdk version "11.0.17" 2022-10-18 LTS OpenJDK Runtime Environment (Red_Hat-11.0.17.0.8-2.el7_9) (build 11.0.17+8-LTS) OpenJDK 64-Bit Server VM (Red_Hat-11.0.17.0.8-2.el7_9) (build 11.0.17+8-LTS, mixed mode, sharing)
こちらも Java11 が有効になっていることが確認できました。