OSX下JDK版本一键切换

瘦蛟舞 | 2015-09-08 16:05

现在经常遇到一些事情需要不同的 JDK 环境. 比如编译 android4.4源码要 JDK6 ,编译 jd 需要 jdk8.这个时候要是能一键切换就能方便很多.

俺用的 zsh 然后编辑器是 mate.所用用以下操作

» mate ~/.zshrc

在文件中加入

#JDK版本切换

export JAVA_6_HOME=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

export JAVA_7_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home

export JAVA_8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home

export JAVA_HOME=$JAVA_8_HOME

alias jdk8='export JAVA_HOME=$JAVA_8_HOME'

alias jdk7='export JAVA_HOME=$JAVA_7_HOME'

alias jdk6='export JAVA_HOME=$JAVA_6_HOME'

然后命令行输入对应了 jdk6 /jdk7 /jdk8 就会得到相应环境

如果没有啥编译操作,仅仅用到 jre的话用符号链接就也能方便不少

» l /usr/bin | grep java

lrwxr-xr-x     1 root   wheel    74B  9  7 01:16 java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

lrwxr-xr-x     1 root   wheel    70B  8  4 16:50 java6 -> /System/Library/Frameworks/JavaVM.framework/Versions/1.6/Commands/java

lrwxr-xr-x     1 root   wheel    72B  8 14 17:04 java7 -> /Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home/bin/java

lrwxr-xr-x     1 root   wheel    73B  8  4 16:45 java8 -> /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java

这样程序需要什么版本的 jre,就可以输入对应的  java6  java7 java8 来操作~