Help us understand the problem. What is going on with this article?

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にコミットしていきましょう。

おわりに

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

gishi_yama
Java User Group Hokkaido #JavaDo Leader, IoTLT Sapporo Staff. R&D: Computers in Education, ICT, Programmer Education. Love:#Java #MobProgramming #codeSpark #ApacheWicket #PostgreSQL
https://sites.google.com/site/cistyamakawa/
iotlt
IoT縛りの勉強会です。 毎月イベントを実施しているので是非遊びに来てください! 登壇者を中心にQiitaでも情報発信していきます。 https://iotlt.connpass.com
https://iotlt.connpass.com/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away