HomebrewでインストールできるJDKまとめ(2019年11月時点)


はじめに

AdoptOpenJDK と Cask-Versions が衝突するなどしていた、homebrewでインストールできるJDK界隈ですが、一応の整理がついたようです。

ここでは、その記念(?)にhomebrewでインストールできるJDKとそのコマンドをまとめておきます。

なお、この記事の執筆時点で、最新バージョンは Java 13 です。

Homebrew

openjdk

brew install openjdk

OpenJDK の最新バージョンが手元でビルド&インストールされます。
ただし、keg-only 指定なので、インストール後に $JAVA_HOME 用のフォルダへのシンボリックリンクを貼る必要があります。

sudo ln -sfn /usr/local/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk
.bashrcなど(PATHの通し方)
# xx はインストールしたJDKのバージョン(例:13)
export JAVA_HOME=`/usr/libexec/java_home -v xx`

@バージョン番号で、11以降のリリース済みバージョンもビルド&インストールできるようです。
(もちろん、サポート期間はリリーススケジュール準拠です)

# OpenJDK 11
brew install openjdk@11
# OpenJDK 12
brew install openjdk@12

Homebrew Cask

java

brew cask install java

Oracle OpenJDK Build (OracleがビルドしたOpenJDK)の最新バージョンがインストールされます。

brew install java との違いは、

  1. オラクルがビルドしたものがそのままダウンロードされる点
  2. $JAVA_HOME 用のフォルダへ直接配置されるので、JAVA_HOME のPATHを通すだけでよい点
    (※恐らく、以後のcaskでインストールできるJDKは全てそう)

です。

(PATHの通し方再掲)
# xx はインストールしたJDKのバージョン(例:13)
export JAVA_HOME=`/usr/libexec/java_home -v xx`

次バージョンのEarly Access版や、Oracle Open JDK 11をインストールすることもできます。

# Oracle OpenJDK 次バージョンのEarly Access版
brew cask install java-beta
# Oracle OpenJDK 11
brew cask install java11

Note That:

Oracle Open JDK(https://jdk.java.net/) をダウンロードするのに、caskのhomepageの値https://openjdk.java.net/ になっていて、設定ミスかな?という感じがします。

java6

brew cask install java6

なんで11の次が6なの...と思っていたら、これは過去にAppleが提供していた JavaForOSX.dmg でした。

oracle-jdk

brew cask install oracle-jdk

Oracleが提供する Oracle JDK の最新バージョンがインストールされます。

利用には Oracle JDK License が適用されます。

zulu

brew cask install zulu

Microsoft Azureにも採用されている、Azul社が提供するZulu JDKの最新バージョンがインストールされます。

バージョン番号をつけて、Zuluが独自にLTSを提供している旧バージョンもインストールできるようです。

# Azul Zulu JDK 11
brew cask install zulu11
# Azul Zulu JDK 8
brew cask install zulu8
# Azul Zulu JDK 7
brew cask install zulu7

adoptopenjdk

brew cask install adoptopenjdk

AdoptOpenJDK.net Community がビルドした OpenJDK の最新バージョンがインストールされます。

AdoptOpenJDK/openjdk をtapすることで、バージョンの指定や、HotSpot VM版以外にも、J9版などがインストールできるようになります。

brew tap AdoptOpenJDK/openjdk
# AdoptOpenJDK, HotSpot版の11
brew cask install adoptopenjdk11
# AdoptOpenJDK, HotSpot版のJREのみ
brew cask install adoptopenjdk11-jre
# AdoptOpenJDK, OpenJ9版の11
adoptopenjdk11-openj9

他、沢山あるので https://github.com/AdoptOpenJDK/homebrew-openjdk/tree/master/Casks を参照してください。

corretto

brew cask install corretto

Amazon Linuxなどにも採用されているAmazon Correto の最新バージョンがインストールされます。

この記事の執筆時点では、リリースされている11と8が用意されています。

# Amazon Correto 11
brew cask install corretto
# Amazon Correto 8
brew cask install corretto8

sapmachine-jdk

brew cask install sapmachine-jdk

ドイツのSAP社が提供するOpenJDK(SapMachine)の最新バージョンがインストールされます。

LTS(11)のcaskは(まだ)ないようです。

どのJDKをインストールすれば良いか?

OpenJDKソムリエに関連するまとめ あたりの資料ややりとりをウォッチしつつ、ビルド元やライセンス、LTSの提供状況で自分の環境に合うディストリビューターのものを選ぶ(orビルドする)のが良い感じです。

複数のJDKを使い分け・切り替えしたい場合は SDKMAN!JEnv の利用も検討したほうが良さそうですね。

Homebrew でまだインストールできないディストリビューターのJDKもあるので、ほしいなと思った人はぜひHomebrew Caskにコミットしていきましょう。

おわりに

これもインストールできるよ? などあれば教えてください。