Set JDK on OSX
Written by  Viktor Gamov -
Version | Date | Comments |
---|---|---|
v1.2 |
11/9/2016 |
Explained |
v1.1 |
11/8/2016 |
Added Java 9 command |
v1.0 |
01/19/2013 |
Initial blog post |
Apple announced to remove Java Preferences app from Mac OS X.
Details could be found here http://support.apple.com/kb/HT5493). Let’s try to fix it.
Generally, Java applications will use the JAVA_HOME environment variable to pick a JDK.
To set to JDK 6
export JAVA_HOME=$(/usr/libexec/java_home -v 1.6)
To set JDK 7
export JAVA_HOME=$(/usr/libexec/java_home -v 1.7)
To set JDK 8
export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)
To set JDK 9
export JAVA_HOME=$(/usr/libexec/java_home -v 9)
In JDK 9, Oracle changed JVMPlatformVersion format.
Before JDK 9, the format was 1.x
|
Figure 1. You can check this in
/Library/Java/JavaVirtualMachines/{java version}/Contents/Info.plist
Created aliases for my zsh shell
alias setjdk16='export JAVA_HOME=$(/usr/libexec/java_home -v 1.6)'
alias setjdk17='export JAVA_HOME=$(/usr/libexec/java_home -v 1.7)'
alias setjdk18='export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)'
alias setjdk19='export JAVA_HOME=$(/usr/libexec/java_home -v 9)'
For the exotic cases, like Netbeans follow instruction here