🐶
javaを11.0.6→17にアップデートする
自分のjavaバージョンを調べる
java -version
openjdk 11.0.6とでました。
ZuluとはAzul Systemsは、OpenJDKというjavaのオープンソース版を独自にビルドして配布しているOpenJDKのバージョンです。OpenJDK(Java Development Kit)とはそのままで、無料で誰でも使えるJavaを動かすための開発ツールです。なのでZuluという開発キットを使用してjavaで開発しているということ。使用しているJDKはなんですかと聞かれたらZuluと答えます。
openjdk 11.0.6 2020-01-14 LTS
OpenJDK Runtime Environment Zulu11.37+17-CA (build 11.0.6+10-LTS)
OpenJDK 64-Bit Server VM Zulu11.37+17-CA (build 11.0.6+10-LTS, mixed mode)
brew listでopenjdk@17がインストールされていたのを確認しました。システムがデフォルトでJava 11を使用している可能性があるみたい
JAVA_HOMEがどこを指しているのか確認すると、何も表示されなかった。正しく設定されていないっぽい
echo $JAVA_HOME
Java 17のインストールパスを確認
/usr/libexec/java_home -v 17
Java 11のパスが返されたので、やっぱり正しく設定されていない
/Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home
HomebrewでインストールされたJava 17を正しく認識させるため、以下でシンボリックリンクを作成した
sudo ln -sfn $(brew --prefix openjdk@17)/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-17.jdk
再度インストールパスを確認するとJava11とJava17がちゃんと表示されたので、両方インストールされたことを確認できた
Matching Java Virtual Machines (2):
17.0.7 (arm64) "Homebrew" - "OpenJDK 17.0.7" /opt/homebrew/Cellar/openjdk@17/17.0.7/libexec/openjdk.jdk/Contents/Home
11.0.6-zulu-11.37+17 (x86_64) "Azul Systems, Inc." - "Zulu 11" /Library/Java/JavaVirtualMachines/zulu-11.jdk/Contents/Home
/opt/homebrew/Cellar/openjdk@17/17.0.7/libexec/openjdk.jdk/Contents/Home
次にHomebrewでインストールされているJava17をデフォルトに設定するため、以下のコマンドでJAVA_HOMEに設定
export JAVA_HOME=$(/usr/libexec/java_home -v 17)
確認
echo $JAVA_HOME
正しく設定できていた
/opt/homebrew/Cellar/openjdk@17/17.0.7/libexec/openjdk.jdk/Contents/Home
バージョンを再確認
java --version
更新できた!
openjdk 17.0.7 2023-04-18
OpenJDK Runtime Environment Homebrew (build 17.0.7+0)
OpenJDK 64-Bit Server VM Homebrew (build 17.0.7+0, mixed mode, sharing)
Discussion