說(shuō)明
從macOS 10.12開始往弓,Apple公司已經(jīng)已經(jīng)不再對(duì)JDK6提供技術(shù)支持, 而Oracle公司只提供了1.7以及1.8版本,以及最新的JDK9 叛买,所以本文主要安裝這三個(gè)版本豺妓。
- 系統(tǒng)版本:10.12.6
- JDK版本:
- 1.7 (1.7.0_80)
- 1.8 (1.8.0_111)
- 9 (build 9+181)
安裝
從官網(wǎng)JDK歸檔頁(yè)面可以找到Oracle提供的所有歷史版本的JDK:
http://www.oracle.com/technetwork/java/archive-139210.html
下載macOS版本的1.7飒赃、1.8 和 9,按照正常的安裝方法進(jìn)行安裝科侈。
配置
安裝完成之后载佳,調(diào)出terminal命令行工具,檢驗(yàn)安裝是否成功:
$ java -version
java version "9"
Java(TM) SE Runtime Environment (build 9+181)
Java HotSpot(TM) 64-Bit Server VM (build 9+181, mixed mode)
那如何進(jìn)行版本切換呢臀栈?先看當(dāng)前生效的JDK路徑:
$ which java
/usr/bin/java
$ cd /usr/bin
$ ls -l
……
lrwxr-xr-x 1 root wheel 74 Oct 21 18:10 java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
lrwxr-xr-x 1 root wheel 75 Oct 21 18:10 javac -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javac
lrwxr-xr-x 1 root wheel 77 Oct 21 18:10 javadoc -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javadoc
……
可以發(fā)現(xiàn)這個(gè)java只是一個(gè)當(dāng)前系統(tǒng)生效的JDK的一個(gè)軟連接蔫慧,Java安裝的是實(shí)際位置位于
/Library/Java/JavaVirtualMachines
使用如下的命令可以指定當(dāng)前系統(tǒng)使用哪個(gè)版本的JDK:
$ /usr/libexec/java_home -v 版本號(hào)
編輯bash_profile
文件,添加如下內(nèi)容(注意:JDK9不是 -v 1.9):
$ vi ~/.bash_profile
export JAVA_6_HOME="$(/usr/libexec/java_home -v 1.6)"
export JAVA_7_HOME="$(/usr/libexec/java_home -v 1.7)"
export JAVA_8_HOME="$(/usr/libexec/java_home -v 1.8)"
export JAVA_9_HOME="$(/usr/libexec/java_home -v 9)"
export JAVA_10_HOME="$(/usr/libexec/java_home -v 10)"
export JAVA_11_HOME="$(/usr/libexec/java_home -v 11)"
alias jdk6='export JAVA_HOME=$JAVA_6_HOME'
alias jdk7='export JAVA_HOME=$JAVA_7_HOME'
alias jdk8='export JAVA_HOME=$JAVA_8_HOME'
alias jdk9='export JAVA_HOME=$JAVA_9_HOME'
alias jdk10='export JAVA_HOME=$JAVA_10_HOME'
alias jdk11='export JAVA_HOME=$JAVA_11_HOME'
# 默認(rèn)使用JDK8
export JAVA_HOME=$JAVA_8_HOME
$ source ~/.bash_profile
版本切換
如上配置之后权薯,默認(rèn)使用JDK1.8姑躲,然后使用jdk7
、jdk8
或jdk9
來(lái)切換當(dāng)前系統(tǒng)的JDK版本:
$ java -version
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
# 切換到JDK1.8盟蚣,使用如下命令
$ jdk8
$ java -version
java version "1.8.0_111"
Java(TM) SE Runtime Environment (build 1.8.0_111-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)
# 切換到JDK9
$ jdk9
$ java -version
java version "9"
Java(TM) SE Runtime Environment (build 9+181)
Java HotSpot(TM) 64-Bit Server VM (build 9+181, mixed mode)
其他
linux環(huán)境下JDK配置備份如下:
$ sudo vi ~/.bashrc
export JAVA_HOME=/my/java/home/jdk180
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
$ source ~/.bashrc
windows環(huán)境下JDK配置如下:
JAVA_HOME=/my/java/home/jdk180
CLASSPATH=.;%JAVA_HOME%\lib;%JAVA_HOME%\jre\lib
PATH=%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;%PATH%
參考資料
轉(zhuǎn)自:https://adolphor.com/blog/2016/12/24/install-multiple-jdk-to-macos.html