macos jdk 版本切換
阿新 • • 發佈:2019-02-05
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 1.6/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
MYPC001:~ jinxing$ /usr/libexec/java_home -v 1.8
/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home
既然能取到路徑, 就直接修改java_home上就可以了。 我是加到alias上做了一個別名。 如下。
MYPC001:~ jinxing$ aliasalias l='ls -lG'alias la='ls -laG'alias ll='ls -laG'alias vi='vim'
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
MYPC001:~ jinxing$ java -version
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$ jdk6
MYPC001:~ jinxing$ java -version
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)
CSDN什麼時候能用markdown啊。。。。。