Installing OpenJDK 11 on MacOS
Need help installing OpenJDK 11 on MacOS? Click here to learn how in this simple, easy-to-follow tutorial with sample code!
Join the DZone community and get the full member experience.Join For Free
/usr/libexec/java_home: This will show you where the current JDK home is, for example:
/usr/libexec/java_home -V: This lists all installed JDKs, which is shown below:
$ /usr/libexec/java_home -V Matching Java Virtual Machines (2): 10, x86_64: "Java SE 10" /Library/Java/JavaVirtualMachines/jdk-10.jdk/Contents/Home 1.8.0_151, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home
To switch between JDKs, use /usr/libexec/java_home -v version (e.g. 10):
$ /usr/libexec/java_home -v 1.8.0_151 /Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home
Knowing that your available JDKs are installed to /Library/Java/JavaVirtualMachines/ by default, moving the contents of the downloaded OpenJDK 11 dir from inside the .gz file to the same location would make sense.
Once you’ve moved it there, java_home -V now shows the new JDK in place:
$ /usr/libexec/java_home -V Matching Java Virtual Machines (3): 11, x86_64: "OpenJDK 11" /Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home 10, x86_64: "Java SE 10" /Library/Java/JavaVirtualMachines/jdk-10.jdk/Contents/Home 1.8.0_151, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home
Updating my aliases to quickly switch versions in my .bash_profile, I now have:
alias j11="export JAVA_HOME=/usr/libexec/java_home -v 11; java -version" alias j10="export JAVA_HOME=/usr/libexec/java_home -v 10; java -version" alias j8="export JAVA_HOME=/usr/libexec/java_home -v 1.8; java -version"
Sourcing the .bash_profile (source .bash_profile) and then running each alias, now I’ve got OpenJDK 11 set up and ready to go!
$ j11 openjdk version "11" 2018-09-25 OpenJDK Runtime Environment 18.9 (build 11+28) OpenJDK 64-Bit Server VM 18.9 (build 11+28, mixed mode)
Published at DZone with permission of Kevin Hooke, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.