macOS用的是 macOS Sierra 10.12.6.
因为工作上需求需要用到jdk6, 而我自己的一些工具还需要jdk1.8。jdk1.6还有oracle和苹果的版本。 安装后的路径都不一样, 本来要换软连接的方式来做的, 但是每次都很麻烦, 就谷歌了一下。
jdk安装完后的路径。
苹果提供的在/System/Library/Java/JavaVirtualMachines
oracle提供的/Library/Java/JavaVirtualMachines
无论如何,不管怎样, 这些路径都可以通过一个java_home的命令行来取得。
MYPC001:~ jinxing$ /usr/libexec/java_home -V
Matching Java Virtual Machines (3):
1.8.0_151, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home
1.6.0_65-b14-468, x86_64: "Java SE 6" /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
1.6.0_65-b14-468, i386: "Java SE 6" /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home
如果用小v可以指定版本来取得路径。
MYPC001:~ jinxing$ /usr/libexec/java_home -V
Matching Java Virtual Machines (3):
1.8.0_151, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home
1.6.0_65-b14-468, x86_64: "Java SE 6" /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
1.6.0_65-b14-468, i386: "Java SE 6" /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/HomeMYPC001:~ jinxing$ /usr/libexec/java_home -v 1.6
/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/HomeMYPC001:~ jinxing$ /usr/libexec/java_home -v 1.8
既然能取到路径, 就直接修改java_home上就可以了。
我是加到alias上做了一个别名。 如下。
alias l='ls -lG'alias la='ls -laG'alias ll='ls -laG'alias vi='vim'MYPC001:~ jinxing$ alias
alias jdk6='export JAVA_HOME=`/usr/libexec/java_home -v 1.6`' alias jdk8='export JAVA_HOME=`/usr/libexec/java_home -v 1.8`'
这样可以通过jdk6 jdk8来切换java版本了。
MYPC001:~ jinxing$ jdk8
java version "1.8.0_151"Java(TM) SE Runtime Environment (build 1.8.0_151-b12)Java HotSpot(TM) 64-Bit Server VM (build 25.151-b12, mixed mode)MYPC001:~ jinxing$ java -version
MYPC001:~ jinxing$ jdk6
java version "1.6.0_65"Java(TM) SE Runtime Environment (build 1.6.0_65-b14-468-11M4833)Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-468, mixed mode)MYPC001:~ jinxing$ java -version
CSDN什么时候能用markdown啊。。。。。