Ubuntuで複数javaの管理

1. 複数javaのインストール

$ sudo apt-get install openjdk-17.jdk
$ sudo apt-get install openjdk-17.jdk

2. update-alternativeで確認

$ sudo update-alternative --config java
There are 2 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                         Priority   Status
------------------------------------------------------------
* 0            /usr/lib/jvm/java-21-openjdk-amd64/bin/java   2111      auto mode
  1            /usr/lib/jvm/java-17-openjdk-amd64/bin/java   1711      manual mode
  2            /usr/lib/jvm/java-21-openjdk-amd64/bin/java   2111      manual mode

Press <enter> to keep the current choice[*], or type selection number:

3. JAVA_HOMEもupdate_alternativeで同時に切り替えられるようにする。

  • ~/java_home.shを作成
export JAVA_HOME=`echo $(dirname $(readlink $(readlink $(which java)))) | sed -e 's/\/bin$//g' | sed -e 's/\/jre$//g'`
  • ~/.zshrcに追記(ログイン時対応)
# Java update-alternative
source ~/java_home.sh

4. javaのバージョンの切り替え

  • 以下を実行するとupdate-alternativeでversionを選択した後、自動で$JAVA_HOMEも切り替わる。
$ sudo update-alternative --config java | source ~/java_home.sh

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です