search
LoginSignup
33

More than 1 year has passed since last update.

posted at

updated at

OpenJDK 11 を Homebrew で macOS にインストールする

(2020年1月17日追記) Homebrew でインストールされる OpenJDK 11 (java11) は Oracle ビルド版

もうサポートされていないので AdoptOpenJDK 等のビルド版を使用したほうが良いと思われる。
Java 11 (OpenJDK: AdoptOpenJDK) を Homebrew で macOS にインストールする - Qiita

参考までに、 Homebrew でインストールされる OpenJDK 11 (java11) の最新バージョンは2019年1月15日のもの。

$ /Library/Java/JavaVirtualMachines/openjdk-11.0.2.jdk/Contents/Home/bin/java -version
openjdk version "11.0.2" 2019-01-15
OpenJDK Runtime Environment 18.9 (build 11.0.2+9)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+9, mixed mode)

homebrew-cask-versions/java11.rb at master · Homebrew/homebrew-cask-versions · GitHub

cask 'java11' do
  version '11.0.2,9'
  sha256 'f365750d4be6111be8a62feda24e265d97536712bc51783162982b8ad96a70ee'

  url "https://download.oracle.com/java/GA/jdk#{version.major}/#{version.after_comma}/GPL/openjdk-#{version.before_comma}_osx-x64_bin.tar.gz"
  name 'OpenJDK Java Development Kit'
  homepage 'https://www.oracle.com/technetwork/java/javase/'

  artifact "jdk-#{version.before_comma}.jdk", target: "/Library/Java/JavaVirtualMachines/openjdk-#{version.before_comma}.jdk"
end

↓ それでも Homebrew で OpenJDK 11 をインストールするには以下を参照。

Homebrew をインストール

インストール方法はこのへん → https://brew.sh/index_ja

古いバージョンをインストールできる homebrew-cask-versions を導入

GitHub - Homebrew/homebrew-cask-versions: 🔢 Alternate versions of Casks

$ brew tap homebrew/cask-versions

OpenJDK 11 をインストール

$ brew cask install java11

インストールされたディレクトリの場所を確認

$ /usr/libexec/java_home -v 11
/Library/Java/JavaVirtualMachines/openjdk-11.0.2.jdk/Contents/Home

環境変数 JAVA_HOME と PATH を設定

必要に応じて .bash_profile や .bashrc などに記述する。

export JAVA_HOME=`/usr/libexec/java_home -v 11`
PATH=${JAVA_HOME}/bin:${PATH}

インストールされた OpenJDK を確認

$ java -version
openjdk version "11.0.2" 2019-01-15
OpenJDK Runtime Environment 18.9 (build 11.0.2+9)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+9, mixed mode)

$ javac -version
javac 11.0.2

$ which java
/Library/Java/JavaVirtualMachines/openjdk-11.0.2.jdk/Contents/Home/bin/java

$ which javac
/Library/Java/JavaVirtualMachines/openjdk-11.0.2.jdk/Contents/Home/bin/javac

参考: OpenJDK 11 が最新版だったときの記録

2019年01月25日の時点では OpenJDK の最新バージョンが11だったので、以下のコマンドでバージョン11がインストールされていた。現在の最新バージョンは11ではないので、もっと新しい OpenJDK がインストールされる。

$ brew cask install java

homebrew-cask/java.rb at 4f5fe409889d844c91b35c03f0ea37932b5a818b · Homebrew/homebrew-cask · GitHub を見ると、その時点でインストールされるのが OpenJDK 11.0.2+9 だったとわかる。

cask 'java' do
  version '11.0.2,9'
  sha256 'f365750d4be6111be8a62feda24e265d97536712bc51783162982b8ad96a70ee'

  url "https://download.java.net/java/GA/jdk#{version.major}/#{version.after_comma}/GPL/openjdk-#{version.before_comma}_osx-x64_bin.tar.gz"
  name 'OpenJDK'
  homepage 'https://jdk.java.net/'

インストールされた OpenJDK を確認。

$ java -version
openjdk version "11.0.2" 2019-01-15
OpenJDK Runtime Environment 18.9 (build 11.0.2+9)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+9, mixed mode)

$ javac -version
javac 11.0.2

$ which java
/usr/bin/java

$ which javac
/usr/bin/javac

$ /usr/libexec/java_home -V
Matching Java Virtual Machines (1):
    11.0.2, x86_64: "OpenJDK 11.0.2"    /Library/Java/JavaVirtualMachines/openjdk-11.0.2.jdk/Contents/Home

/Library/Java/JavaVirtualMachines/openjdk-11.0.2.jdk/Contents/Home

$ ls -l /usr/bin/java*
lrwxr-xr-x  1 root  wheel  74 10 16 18:48 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
lrwxr-xr-x  1 root  wheel  75 10 16 18:48 /usr/bin/javac -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javac
lrwxr-xr-x  1 root  wheel  77 10 16 18:48 /usr/bin/javadoc -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javadoc
lrwxr-xr-x  1 root  wheel  75 10 16 18:48 /usr/bin/javah -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javah
lrwxr-xr-x  1 root  wheel  75 10 16 18:48 /usr/bin/javap -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javap
lrwxr-xr-x  1 root  wheel  82 10 16 18:48 /usr/bin/javapackager -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javapackager
lrwxr-xr-x  1 root  wheel  76 10 16 18:48 /usr/bin/javaws -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javaws

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
33