Linuxのjdkを切り替える

OpenJOKからOracle JDK(Java SE)に切り替える要件があったのでメモ。

OSはRedHat。

現在のバージョンを確認

サーバー内で以下コマンドを使用し、現在のjavaを確認

java -version

OpneJDKを使用していれば以下のように表示される。

openjdk version "x.x.x" yyyy-mm-dd LTS

Oracle JDKであれば以下のような表記になる。

Java(TM) SE Runtime Environment x.x (build x.x.x+x-LTS-279)

Oracle JDKダウンロード

Oracleの公式サイトから使用したいバージョンのJDKをダウンロード。

今回はrpm形式をダウンロードする。

サーバーにインストール

ダウンロードしたファイルをサーバーの適当な場所に配置する。

今回は/tmp/jdkに配置する。

配置したディレクトリに移動し、以下コマンドで展開。

rpm -ivh jdk-x.x.x_linux-x64_bin.rpm

※すでにOracleJDKを使用していて、アップテートしたいだけの場合は、-Uvhを使用

rpm -Uvh jdk-x.x.x_linux-x64_bin.rpm

JDKの切り替え

alternativesコマンドで使用しているJOKを切り替える。

alternatives --config java

alternativesはjavaの優先度を設定するコマンド。以下のように、コンソールに表示が出る。

There are 3 programs which provide 'java'.

Selection  Command
----------------------------------------------------
   1       java-x.x.x-openjdk. x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0
 + 2       java-x-openjd. x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.24.0.8
*  3       /usr/lib/jvm/jdk-x.x.x-oracle-x64/bin/java

Enter to keep the current selection[+], or type selection number:

+マークのついているものが現在の設定。

*マークは推奨バージョン。

どのJDKを選択するか、番号を入力する。

古いJDKを削除

必要に応じて古いJDKをアンインストールする。

yum remove Java-x.x.x-openjdk.x86_64

古いjavaのパッケージ名は、先ほどalternativesコマンドで表示されたものを参考にする。

 

コメント

タイトルとURLをコピーしました