jenvのインストール
brewでインストール
brew install jenv
設定
Bashを使っている場合
echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile echo 'eval "$(jenv init -)"' >> ~/.bash_profile
Zshを使っている場合
echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc echo 'eval "$(jenv init -)"' >> ~/.zshrc
ディレクトリを作成
mkdir ~/.jenv mkdir ~/.jenv/versions #.bash_profile を再読み込み source ~/.bash_profile # zshなら source ~/.zshrc
jenvのインストールに問題ないか確認
$ jenv doctor
インストール済のバージョンを確認
/usr/libexec/java_home -V Matching Java Virtual Machines (3): 16.0.2 (x86_64) "Oracle Corporation" - "OpenJDK 16.0.2" /Users/user/Library/Java/JavaVirtualMachines/openjdk-16.0.2/Contents/Home 16.0.1 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 16" /Library/Java/JavaVirtualMachines/adoptopenjdk-16.jdk/Contents/Home 11.0.11 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 11" /Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home
jenv環境へインストールJavaを追加
$ jenv add /Users/user/Library/Java/JavaVirtualMachines/openjdk-16.0.2/Contents/Home openjdk64-16.0.2 added 16.0.2 added 16.0 added 16 added $ jenv add /Library/Java/JavaVirtualMachines/adoptopenjdk-16.jdk/Contents/Home openjdk64-16.0.1 added 16.0.1 added 16.0 already present, skip installation 16 already present, skip installation $ jenv add /Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home openjdk64-11.0.11 added 11.0.11 added 11.0 added 11 added
jenvに追加されているJDKの一覧
先頭に*が表示されているJDKが有効化されている。
$ jenv versions * system (set by /Users/jpd20537/.jenv/version) 11 11.0 11.0.11 16 16.0 16.0.1 16.0.2 openjdk64-11.0.11 openjdk64-16.0.1 openjdk64-16.0.2
Javaの切り替え
# グローバル $ jenv global 1.8.0.222 # ローカル(特定のディレクトリのみに適用) $ jenv local 11.0 $jenv version 11.0.11 (set by /Users/user/workspace/project/.java-version)
設定されているJavaの確認
$ echo $JAVA_HOME /Users/user/.jenv/versions/11.0.11 ~/workspace/project $ java -version openjdk version "11.0.11" 2021-04-20 OpenJDK Runtime Environment AdoptOpenJDK-11.0.11+9 (build 11.0.11+9) OpenJDK 64-Bit Server VM AdoptOpenJDK-11.0.11+9 (build 11.0.11+9, mixed mode)
環境変数JAVA_HOMEの自動設定
$ jenv enable-plugin export
# 自動設定を解除するにはdisable-plugin export