⚠ DEPRECATION NOTICE ⚠

August 17, 2021 · View on GitHub

This homebrew tap is officially deprecated in favor of the temurin casks provided directly from the Homebrew project, and will receive no further updates after 2021-08-01 (Aug 01, 2021). Please adjust your usage accordingly:

Untap this brew tap:

$ brew untap AdoptOpenJDK/openjdk

To download the latest version (16):

$ brew install --cask temurin

To install other versions:

$ brew tap homebrew/cask-versions
$ brew install --cask temurin8

AdoptOpenJDK - HomeBrew TAP

Usage

To always get the latest and greatest AdoptOpenJDK, run:

$ brew install --cask adoptopenjdk

The adoptopenjdk cask will automatically upgrade to the newest patch or major release as soon as it comes out.

To stay with a specific major release, activate the AdoptOpenJDK tap with brew tap and then install the desired version with brew install --cask <version>:

$ brew tap AdoptOpenJDK/openjdk
$ brew install --cask <version>

To install AdoptOpenJDK 14 with HotSpot, run:

$ brew tap AdoptOpenJDK/openjdk
$ brew install --cask adoptopenjdk14

Multiple major releases can be installed side-by-side. To get a list of available versions, run brew search adoptopenjdk or see the list here in the README.

Available Versions

Java VersionJDKJRE
Latest OpenJDK with Hotspot JVMadoptopenjdkadoptopenjdk-jre
Latest OpenJDK with OpenJ9 JVMadoptopenjdk-openj9adoptopenjdk-openj9-jre
OpenJDK8 with Hotspot JVMadoptopenjdk8adoptopenjdk8-jre
OpenJDK8 with OpenJ9 JVMadoptopenjdk8-openj9adoptopenjdk8-openj9-jre
OpenJDK9 with Hotspot JVMadoptopenjdk9n/a
OpenJDK10 with Hotspot JVMadoptopenjdk10n/a
OpenJDK11 with Hotspot JVMadoptopenjdk11adoptopenjdk11-jre
OpenJDK11 with OpenJ9 JVMadoptopenjdk11-openj9adoptopenjdk11-openj9-jre
OpenJDK12 with Hotspot JVMadoptopenjdk12adoptopenjdk12-jre
OpenJDK12 with OpenJ9 JVMadoptopenjdk12-openj9adoptopenjdk12-openj9-jre
OpenJDK13 with Hotspot JVMadoptopenjdk13adoptopenjdk13-jre
OpenJDK13 with OpenJ9 JVMadoptopenjdk13-openj9adoptopenjdk13-openj9-jre
OpenJDK14 with Hotspot JVMadoptopenjdk14adoptopenjdk14-jre
OpenJDK14 with OpenJ9 JVMadoptopenjdk14-openj9adoptopenjdk14-openj9-jre
OpenJDK15 with Hotspot JVMadoptopenjdk15adoptopenjdk15-jre
OpenJDK15 with OpenJ9 JVMadoptopenjdk15-openj9adoptopenjdk15-openj9-jre
OpenJDK16 with Hotspot JVMadoptopenjdk16adoptopenjdk16-jre
OpenJDK16 with OpenJ9 JVMadoptopenjdk16-openj9adoptopenjdk16-openj9-jre

Switch between different JDK versions

  1. Add the below function in your ~/.bashrc or ~/.zshrc
jdk() {
        version=\$1
        export JAVA_HOME=$(/usr/libexec/java_home -v"$version");
        java -version
 }

For Fish shell user, add the below function in your ~/.config/fish/functions

function jdk
	set java_version $argv
	set -Ux JAVA_HOME (/usr/libexec/java_home -v $java_version)
	java -version
end
  1. Source the profile and you can change the version like below:
 jdk 1.8
 jdk 9
 jdk 11
 jdk 13

Adding a new cask

If a new major version has been released (e.g 14) add it to casks.txt. Normally you just need to copy the list of casks from the previous major version. e.g

# OpenJDK14
adoptopenjdk14
adoptopenjdk14-jre
adoptopenjdk14-openj9
adoptopenjdk14-openj9-jre