"Oracle JDK 17"をインストールしてみた

2021/11/01に公開

Oracleが「Oracle JDK 17」から再び無料で提供する(本番環境でも利用可)との記事を見たので、
とりあえず、インストールしてみました。

Oracle JDK 17のポイント

  • 本番環境で無償利用可能
  • LTS版(LTS:Long Term Support)
     - 次の長期サポート(LTS)のリリースされてから1年が経過するまでサポート予定
     - ただし、次のLTSについてオラクルは「2年後かも?」と提案しているので賞味3年(2024年末)ぐらい?

前提条件

  • macを利用していること
  • Homebrew, anyenv, jenvをインストールしていること

"Oracle JDK 17"のインストール(チート)

$ brew install --cask oracle-jdk
$ /usr/libexec/java_home -V
$ jenv add /Library/Java/JavaVirtualMachines/jdk-17.0.1.jdk/Contents/Home
$ jenv versions
$ jenv global 17.0
$ java -version

"Oracle JDK 17"のインストール(詳細)

"oracle-jdk"パッケージの検索

$ brew search oracle-jdk
==> Casks
oracle-jdk                                                 oracle-jdk-javadoc

"oracle-jdk"の情報表示

$ brew info oracle-jdk
oracle-jdk: 17.0.1
https://www.oracle.com/java/technologies/downloads/
Not installed
From: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/oracle-jdk.rb
==> Name
Oracle Java Standard Edition Development Kit
==> Description
JDK from Oracle
==> Artifacts
JDK 17.0.1.pkg (Pkg)
==> Caveats
Installing oracle-jdk means you have AGREED to the license at:
  https://www.oracle.com/downloads/licenses/no-fee-license.html

==> Analytics
install: 935 (30 days), 2,914 (90 days), 13,457 (365 days)

"oracle-jdk"のインストール

$ brew install --cask oracle-jdk
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 3 taps (homebrew/cask-versions, homebrew/core and homebrew/cask).
==> New Formulae
fnlfmt                                                     spdx-sbom-generator
==> Updated Formulae
Updated 253 formulae.
==> New Casks
inso                                                       inso-alpha
==> Updated Casks
Updated 36 casks.
==> Deleted Casks
eudic-es                                                   videobox

==> Caveats
Installing oracle-jdk means you have AGREED to the license at:
  https://www.oracle.com/downloads/licenses/no-fee-license.html

==> Downloading https://download.oracle.com/java/17/latest/jdk-17_macos-x64_bin.dmg
######################################################################## 100.0%
Warning: No checksum defined for cask 'oracle-jdk', skipping verification.
==> Installing Cask oracle-jdk
==> Running installer for oracle-jdk; your password may be necessary.
Package installers may write to any location; options such as `--appdir` are ignored.
Password:
installer: Package name is JDK 17.0.1
installer: Installing at base path /
installer: The install was successful.
🍺  oracle-jdk was successfully installed!

"Java Home"の確認

$ /usr/libexec/java_home -V
Matching Java Virtual Machines (7):
    17.0.1, x86_64:	"Java SE 17.0.1"	/Library/Java/JavaVirtualMachines/jdk-17.0.1.jdk/Contents/Home
    ・・・省略・・・

jenv にJavaを追加

$ jenv add /Library/Java/JavaVirtualMachines/jdk-17.0.1.jdk/Contents/Home
oracle64-17.0.1 added
17.0.1 added
17.0 added
 17.0.1 already present, skip installation

jenvで利用しているJavaバージョン確認(system)

$ jenv versions
* system (set by /Users/tack/.anyenv/envs/jenv/version)
  17.0
  17.0.1
  oracle64-17.0.1

グローバルのJava環境を設定

$ jenv global 17.0

jenvで利用しているJavaバージョン確認(17.0)

$ jenv versions
  system
* 17.0 (set by /Users/tack/.anyenv/envs/jenv/version)
  17.0.1
  oracle64-17.0.1

Javaバージョン確認(17.0.1)

$ java -version 
java version "17.0.1" 2021-10-19 LTS
Java(TM) SE Runtime Environment (build 17.0.1+12-LTS-39)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.1+12-LTS-39, mixed mode, sharing)

"java"コマンドの参照先を確認(anyenvのjenv)

$ which java
/Users/tack/.anyenv/envs/jenv/shims/java

参考資料

https://www.publickey1.jp/blog/21/oracle_jdkjava_17.html

https://www.oracle.com/jp/news/announcement/java17-jp-2021-09-17/

https://www.publickey1.jp/blog/21/javalts2lts32.html

Discussion