Java - zhamri/brew GitHub Wiki
Get info
% brew search java
% brew info java
% brew info java11
% brew info openjdk
% brew search openjdk
% brew search openjdk@11
Installation
% brew install openjdk@16
% brew reinstall openjdk
Installed Directory
/usr/local/Cellar/openjdk/16.0.1
Create a symbolic link (symlink) so that the macOS java wrapper can find it.
% sudo ln -sfn /usr/local/opt/openjdk/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk.jdk
% sudo ln -sfn /usr/local/opt/openjdk@11/libexec/openjdk.jdk /Library/Java/JavaVirtualMachines/openjdk-11.jdk
Check the installed Java
% /usr/libexec/java_home -V
% ls -lsah /Library/Java/JavaVirtualMachines/
% /usr/libexec/java_home -v1.8
/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
% /usr/libexec/java_home -v 16
/usr/local/Cellar/openjdk/16.0.1/libexec/openjdk.jdk/Contents/Home
Update .zshrc
JAVA_HOME=$(/usr/libexec/java_home -v16)
PATH="${JAVA_HOME}/bin:${PATH}"
export PATH
Check current version
% source ~/.zshrc
% java -version
Optional
% echo 'export PATH="/usr/local/opt/openjdk/bin:$PATH"' >> ~/.zshrc
% echo 'export PATH="/usr/local/opt/openjdk@8/bin:$PATH"' >> ~/.zshrc
To switch between different versions of Java, add the following to .zshrc.
export JAVA_8_HOME=$(/usr/libexec/java_home -v1.8)
export JAVA_11_HOME=$(/usr/libexec/java_home -v11)
alias java8='export JAVA_HOME=$JAVA_8_HOME'
alias java11='export JAVA_HOME=$JAVA_11_HOME'
# default to Java 11
java11