查看當(dāng)前Shell。
% echo $SHELL
#示例輸出:/bin/zsh
#10.5以下的系統(tǒng)一般會(huì)輸出/bin/bash,10.5以上會(huì)輸出/bin/zsh。這個(gè)步驟本身沒啥用,只是為了看環(huán)境變量配置文件該使用哪個(gè)而已,如果你知道的話可以跳過。
查看默認(rèn)JDK
% /usr/libexec/java_home
#示例輸出:/Library/Java/JavaVirtualMachines/jdk-16.jdk/Contents/Home
查看所有JDKs
% /usr/libexec/java_home -V
#示例輸出:Matching Java Virtual Machines (4):
16 (x86_64) "Oracle Corporation" - "OpenJDK 16-ea" /Library/Java/JavaVirtualMachines/jdk-16.jdk/Contents/Home
15.0.1 (x86_64) "UNDEFINED" - "OpenJDK 15.0.1" /usr/local/Cellar/openjdk/15.0.1/libexec/openjdk.jdk/Contents/Home
14.0.2 (x86_64) "AdoptOpenJDK" - "AdoptOpenJDK 14" /Library/Java/JavaVirtualMachines/adoptopenjdk-14.jdk/Contents/Home
1.8.0_275 (x86_64) "UNDEFINED" - "OpenJDK 8" /usr/local/Cellar/openjdk@8/1.8.0+275/libexec/openjdk.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk-16.jdk/Contents/Home
運(yùn)行指定JDK版本
% /usr/libexec/java_home -v1.8
#示例輸出:/usr/local/Cellar/openjdk@8/1.8.0+275/libexec/openjdk.jdk/Contents/Home
更改配置文件:
方式1(適合macOS 11 Big Sur):編輯 ~/.zshenv或~/.zshrc
% vim ~/.zshenv
然后插入如下代碼
export JAVA_HOME=$(/usr/libexec/java_home)
方式2(適合Mac OS X 10.5以上,因?yàn)榇藭r(shí)bash仍是默認(rèn)的終端shell):編輯~/.bash_profile或~/.bashrc
% vim ~/.bash_profile
然后插入如下代碼
export JAVA_HOME=$(/usr/libexec/java_home)
方式3(適合Mac OS X 10.5以下,此時(shí)/usr/libexec/java_home這個(gè)工具系統(tǒng)還沒內(nèi)置,所以必須設(shè)置$JAVA_HOME的真實(shí)路徑):編輯~/.bash_profile或~/.bashrc
% vim ~/.bash_profile
然后插入如下代碼(這個(gè)路徑是你JDK自己的路徑,請(qǐng)?zhí)鎿Q)
export JAVA_HOME=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
如上編輯好了之后,我們就可以使之立即生效并檢查當(dāng)前環(huán)境變量
% source ~/.zshenv
% echo $JAVA_HOME
#示例輸出:/Library/Java/JavaVirtualMachines/jdk-16.jdk/Contents/Home
參考自:https://mkyong.com/java/how-to-set-java_home-environment-variable-on-mac-os-x/