JDKバージョンの切り替えって面倒ですよね!
ここではjENVを導入してJDKバージョンを簡単に
切り替えれるようにします!
新しいJDKバージョンを試したい時、すでに使用しているバージョンから切り替えるのって結構手間ですよね…
でもjENVを使うとコマンド1発でJDKバージョンを切り替えれるようになります!
jENVのインストールにはHomebrewを使用します
目次
TemurinをインストールしてjENVを導入する
HomebrewをInstallする
公式サイトの「Install Homebrew」のコマンドをコピーしてターミナルから実行します。
Temurin(旧 AdoptOpenJDK)をインストールする
# temurin17の場合
$ brew install --cask temurin17
# temurin11の場合
$ brew install --cask temurin11
JDKのインストールバージョンを確認する
# バージョンを確認する
$ /usr/libexec/java_home -V
Matching Java Virtual Machines (3):
19.0.1 (arm64) "Eclipse Adoptium" - "OpenJDK 19.0.1" /Library/Java/JavaVirtualMachines/temurin-19.jdk/Contents/Home
17.0.5 (arm64) "Eclipse Adoptium" - "OpenJDK 17.0.5" /Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home
11.0.17 (arm64) "Eclipse Adoptium" - "OpenJDK 11.0.17" /Library/Java/JavaVirtualMachines/temurin-11.jdk/Contents/Home
jENVをインストールする
$ brew install jenv
jENV用ディレクトリを作成する
mkdir -p ~/.jenv/versions
Pathを設定する
# Shellがbashの場合
$ echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(jenv init -)"' >> ~/.bash_profile
# Shellがzshの場合
$ echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc
$ echo 'eval "$(jenv init -)"' >> ~/.zshrc
jENVにバージョン切り替え対象のJDKを登録する
# JDK17を追加する
jenv add $(/usr/libexec/java_home -v "17")
# インストールされている全てのJDKバージョンを追加する
$ jenv add $(/usr/libexec/java_home)
jENVに追加されているJDKの一覧を表示する
# 先頭に * があるものが現在有効なJDKバージョン
$ jenv versions
system
temurin64-11.0.17
* temurin64-17.0.5 (set by /Users/kazuadmin/.jenv/version)
temurin64-19.0.1
JDKバージョンを切り替える
# JDKバージョンを「temurin64-19.0.1」に切り替える
$ jenv global temurin64-19.0.1
切り替え後のバージョンを確認する
# temurin64-19.0.1の先頭に * が付いている
$ jenv versions
system
temurin64-11.0.17
temurin64-17.0.5
* temurin64-19.0.1 (set by /Users/kazuadmin/.jenv/version)
これでコマンド1発でJDKが切り替えれるようになりました!
jENVに登録されているJDKを削除(管理対象外に)する
不要なJDKバージョンをjENVから削除するには以下のコマンドを実行します。
$ jenv remove temurin64-11.0.17
# 削除される(JDK自体が削除されるわけではない)
$ jenv versions
system
temurin64-17.0.5
* temurin64-19.0.1 (set by /Users/kazuadmin/.jenv/version)
# 複数指定することも可能
$ jenv remove temurin64-11.0.17 temurin64-17.0.5