Mac下配置環境變量的辛苦歷程

最近新入手了一個Mac,就把公司的電腦交回去啦。安裝一系列的軟件以及配置環境變量自然是少不了的。但是前途是光明的,道路永遠都是曲折的。

耳畔突然想起了“幾度風雨幾度春秋…“

隨有此文章,來記錄一下這其中的坎坷歷程…

1. JDK下載過慢問題

下面提供讓你體驗飛一樣的感覺的下載地址(本人親測有效):

  1. Oracle北洋網站
  2. 華爲雲鏡像
  3. 清華大學開源軟件鏡像站
  4. AdoptOpenJDK

這裏貼個知乎鏈接,感興趣的可以點進去看一下…

2. 配置環境變量的問題

這種問題在瀏覽器上隨便一搜,文章很多但基本都是千篇一律…重點是沒有能解決我遇到的問題。運氣不好的時候,還能把你帶到溝裏…

2.1 查看JDK版本信息

對於非Java系的開發者,很容易出現錯誤。因爲對於Python,Rust的開發者,基本都是使用(雙槓version) :

  • python --version
  • rustc --version

而Java查看版本信息,使用的是(單槓version):

java -version

該問題在stackoverflow上居然還是個高贊回答…所以特地在此處說一下


2.2 JDK安裝路徑

首先我們要知道我們的JDK的安裝路徑。Mac 電腦上安裝目錄是固定的。

  1. Mac 電腦上安裝目錄是固定的
    Library/Java/JavaVirtualMachines/JDK對應版本.jdk/Contents/Home/目錄中.

  2. 我們也可以使用命令(/usr/libexec/java_home -V)來查看JDK的安裝路徑:

bertking@BertkingdeMacBook-Pro : /usr/libexec/java_home -V
Matching Java Virtual Machines (1):
    13, x86_64:	"Java SE 13-ea"	/Library/Java/JavaVirtualMachines/jdk-13.jdk/Contents/Home

/Library/Java/JavaVirtualMachines/jdk-13.jdk/Contents/Home

2.3 配置路徑的常規步驟

關於Mac電腦設置環境變量可以有多種方案。具體可以查看:MAC設置環境變量的多種方案
這裏介紹的是編輯/etc/profile 文件的方式。
爲了避免出現權限問題( permission denied),這裏直接使用

  1. sudo vim /etc/profile

  2. 點擊 i 進入編輯模式,在下方空白處輸入:

JAVA_HOME="/Library/Java/JavaVirtualMachines/你自己的JDK.jdk/Contents/Home"
export JAVA_HOME
CLASS_PATH="$JAVA_HOME/lib"
PATH=".$PATH:$JAVA_HOME/bin"

  1. 按下ESC退出編輯模式,然後輸入:wq!退出保存即可。
  2. 輸入source /etc/profile,使配置生效。(假設你前面都OK)
  3. 若4沒有出錯,可以通過 echo $JAVA_HOME 查看輸出。若能返回JDK的安裝目錄,則表示配置成功。

需要我們注意的是:"="前後是不能有空格符的,否則報錯…


2.4 配置中遇到的權限問題

使用命令 source /etc/profile 出現問題:

  1. 權限問題:/etc/profile:1: permission denied:

方案1:前面加上sudo 試一下,結果還是不行。
方案2:修改文件的權限:(sudo)chmod +x /etc/profile 結果還是不行
方案3:修改文件的權限:(sudo) chmod 777 /etc/profile 結果還是不行

可以肯定的是權限問題,那就直接拿管理員權限試一下:

  1. sudo su ,然後Enter鍵
  2. 輸入密碼;
  3. 在 sh-3.2# 後面 輸入執行命令即可

在這裏插入圖片描述

最後我通過拿到管理員權限,纔可以執行source /etc/profile命令,然後配置成功。

最後貼一下我的 etc/profile文件的內容:

if [ -x /usr/libexec/path_helper ]; then
        eval `/usr/libexec/path_helper -s`
fi

if [ "${BASH-no}" != "no" ]; then
        [ -r /etc/bashrc ] && . /etc/bashrc
fi
JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk-13.jdk/Contents/Home"
export JAVA_HOME
CLASS_PATH="$JAVA_HOME/lib"
PATH=".$PATH:$JAVA_HOME/bin"
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                            
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章