なんとなく、Oracle JDKは有償化されるから、無償の Adopt Open JDKを使った方がいいらしいということは小耳にはさんだことがあると思います。実際に何が違うのか、Oracle JDKはダメなのか?調べてみました。
Adopt Open JDKとOracle JDKの違い
Adopt Open JDKとOracle JDKの比較表
Adopt Open JDK | Oracle JDK | |
費用 | 無償 | 非商用・開発のみ無償 商用 1CPU当たり3000円/月額 |
入手 | AdoptOpenJDK | Oracle Java SE ダウンロード |
JDKとは?
JDKとは、Java Development Kit = Java開発キットの略称です。JREは Java Runtime Environment = Java実行環境で、実行するために必要なものしか入っていません。JDKはJRE(実行環境)に加えて、開発に必要なコンパイラーやデバッガーツールが入っています。
Javaを実行するには、.javaファイル→.classファイルにコンパイルする必要があると習ったと思いますが、JREは.classファイルを動かすもの。JDKはJREに加えてコンパイルもできる。
簡単にいうと、JDK = JRE + コンパイラ + デバッガ です。
ローカルで開発する人は、JREじゃなくてJDKをインストールするようにしましょう。逆に本番で動かすときは、JDKには不要な開発ツールが入ってるので、JREだけで大丈夫です。(JDKでも問題はありません)
今から開発案件で使うならどのバージョン?
2021/2/2時点では、AdoptOpenJDKは下記2つがLTSです。
- OpenJDK 8 (LTS)
- OpenJDK 11 (LTS)
2つの中で新しい方であるOpenJDK 11 (LTS)を使いましょう。実案件でも投入されています。新しい方がセキュリティやパフォーマンスなどが改善されているため、LTSの最新版を使うようにするのが得策です。
また、自分の使うフレームワークとの兼ね合いも大きなポイントです。Javaの定番、SpringフレームワークではJava 15/11/8 から選択するようになっています。自分の使うフレームワークが要求しているバージョンをインストールするようにしてください。

Adopt Open JDKのインストール

Adopt Open JDKの公式サイト(https://adoptopenjdk.net/)からJDKをダウンロードする。
ダウンロードしたJDK(OpenJDK11U-jdk_x64_windows_hotspot_11.0.10_9.msi)を実行する。
以下、「次へ」ボタンを押してインストールを完了する。




完了画面が表示されたら、終了。
>java -version
openjdk version "11.0.10" 2021-01-19
OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.10+9)
OpenJDK 64-Bit Server VM AdoptOpenJDK (build 11.0.10+9, mixed mode)
コマンドで「java -version」を入力してインストールしたバージョンが表示されていれば、OK。