問題
Java Runtime Environment の新しいバージョンをインストールしましたが、「java -version」コマンドで新しいバージョンが表示されません。
# java -version java version "1.7.0_65" OpenJDK Runtime Environment (rhel-2.5.1.2.el6_5-x86_64 u65-b17) OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)
解決策
この問題は、システムに Java が複数インストールされているために発生する可能性があります。複数のバージョンの openjdk パッケージがシステムにインストールされている場合、代替 コマンドを使用して、Java のデフォルト バージョンを設定できます。 「alternatives」コマンドの man ページから:
alternatives - maintain symbolic links determining default commands
複数の Java バージョンがインストールされている場合に Java のデフォルト バージョンを設定するには、次のコマンドを使用します。
# alternatives --config java There are 2 programs which provide 'java'. Selection Command ----------------------------------------------- *+ 1 /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java 2 /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java Enter to keep the current selection[+], or type selection number: 2
alternatives java グループへの新しい Java パスをインストールする方法
また、alternatives java グループへの新しい Java パスを手動でインストールすることもできます。これは update-alternatives コマンドを使用して実行できます。それを行うための構文は次のとおりです。
# update-alternatives --install [link] [name] [path] [priority]
その後、「update-alternatives」コマンドを使用して、新しく追加された Java パスをシステムのデフォルトとして設定できます。
# update-alternatives --set [name] [path]
または
# alternatives --set [name] [path]
1. たとえば、jre-1.7.0-openjdk.x86_64 の場合、以下のコマンドを使用してインストールし、使用するデフォルトの Java バージョンとして設定できます。
# update-alternatives --install "/usr/bin/java" "java" /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java 99999 # update-alternatives --set java /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
ここで、
99999 – は優先度です (Java バージョンがデフォルトになるには、これが最も高くなければなりません)。
2. 代替手段を使用して、変更が有効になっているかどうかを確認し、最後にシステムの Java バージョンを確認します。
# alternatives --config java There are 2 programs which provide 'java'. Selection Command ----------------------------------------------- *+ 1 /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java ### default java version 2 /usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java Enter to keep the current selection[+], or type selection number:
3. 「java -version」コマンドを使用して、java の現在のバージョンを確認することもできます。
# java -version java version "1.7.0_65" OpenJDK Runtime Environment (rhel-2.5.1.2.el6_5-x86_64 u65-b17) OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode)