【Mac】brewでJavaの開発環境構築(複数バージョン対応)

スポンサーリンク

はじめに

Mac での Java 開発環境の構築手順をまとめます。

今回の条件としては、下記の通りです。

  • Mac
  • 複数のバージョンを切り替えられる
  • 好きなエディタを使える

JDK のインストール

JDK をインストールする前に、まずはhomebrew-cask-versionsを使えるようにします。

brew tap homebrew/cask-versions
GitHub - Homebrew/homebrew-cask-versions: 🔢 Alternate versions of Casks
🔢 Alternate versions of Casks. Contribute to Homebrew/homebrew-cask-versions development by creating an account on GitHub.

brewで OpenJDK をインストールしていきます。今回インストールするバージョンは 17、11、 8 になります。

openjdk
Homebrew’s package index

ちなみにbrew install javabrew install openjdkは同じです。

まずは Java17 をインストールします。

brew install openjdk@17

出力に出てきたコマンドでシンボリックリンクを貼ります。

sudo ln -sfn /usr/local/opt/openjdk@17/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-17.jdk

同様に Java11 をインストールします。

brew install openjdk@11
sudo ln -sfn /usr/local/opt/openjdk@11/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-11.jdk

最後に Java8 をインストールします。

brew install openjdk@8
sudo ln -sfn /usr/local/opt/openjdk@8/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-8.jdk

インストールした JDK の確認

下記のコマンドでインストールした JDK を確認できます。

/usr/libexec/java_home -V
❯ /usr/libexec/java_home -V

Matching Java Virtual Machines (3):
    17.0.6 (x86_64) "Homebrew" - "OpenJDK 17.0.6" /usr/local/Cellar/openjdk@17/17.0.6/libexec/openjdk.jdk/Contents/Home
    11.0.18 (x86_64) "Homebrew" - "OpenJDK 11.0.18" /usr/local/Cellar/openjdk@11/11.0.18/libexec/openjdk.jdk/Contents/Home
    1.8.0_362 (x86_64) "Homebrew" - "OpenJDK 8" /usr/local/Cellar/openjdk@8/1.8.0+362/libexec/openjdk.jdk/Contents/Home
/usr/local/Cellar/openjdk@17/17.0.6/libexec/openjdk.jdk/Contents/Home

jEnv のインストール

Java のバージョンを切り替えるための jEnv をインストールします。

GitHub - jenv/jenv: Manage your Java environment
Manage your Java environment . Contribute to jenv/jenv development by creating an account on GitHub.
brew install jenv

jEnv が使えるように~/.bash_profile~/.zshrcに下記を追記します。

export PATH="$HOME/.jenv/bin:$PATH"
eval "$(jenv init -)"

下記でシェルを再起動するとjenvが使えるようになっています。

exec $SHELL -l

JAVA_HOMEが設定されるように、下記のプラグインも追加しておきます。

jenv enable-plugin export
exec $SHELL -l

jEnv に JDK を追加

jEnv に JDK を追加します。

下記のコマンドで確認できるパスを使って、JDK を追加します。

❯ /usr/libexec/java_home -V

Matching Java Virtual Machines (3):
    17.0.6 (x86_64) "Homebrew" - "OpenJDK 17.0.6" /usr/local/Cellar/openjdk@17/17.0.6/libexec/openjdk.jdk/Contents/Home
    11.0.18 (x86_64) "Homebrew" - "OpenJDK 11.0.18" /usr/local/Cellar/openjdk@11/11.0.18/libexec/openjdk.jdk/Contents/Home
    1.8.0_362 (x86_64) "Homebrew" - "OpenJDK 8" /usr/local/Cellar/openjdk@8/1.8.0+362/libexec/openjdk.jdk/Contents/Home
/usr/local/Cellar/openjdk@17/17.0.6/libexec/openjdk.jdk/Contents/Home

jenv addで JDK を追加します。

jenv add {PATH_TO_JVM_HOME}
jenv add /usr/local/Cellar/openjdk@17/17.0.6/libexec/openjdk.jdk/Contents/Home

追加した JDK は下記で確認できます。

❯ jenv versions
* system (set by /Users/masa/.jenv/version)
  1.8
  1.8.0.362
  11.0
  11.0.18
  17.0
  17.0.6
  openjdk64-1.8.0.362
  openjdk64-11.0.18
  openjdk64-17.0.6

jEnv でバージョンの切り替え

ローカルでバージョンを指定するときは下記で設定します。

jenv local 11.0
exec $SHELL -l

グローバルで設定するときは下記です。

jenv global 11.0

参考

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