每當(dāng)學(xué)習(xí)一門新技術(shù)的時候,其中一個最大的攔路虎就是環(huán)境安裝配置,比如java,安卓,比如php都需要安裝和配置一大堆工具,安裝不順利的時候無疑會在我們的熱情上澆一頭冷水。這不,最近打算學(xué)習(xí)Flutter開發(fā),光是安裝配置就搗鼓了好幾天,現(xiàn)在記錄下來Mac環(huán)境變量的配置。
為什么要配置環(huán)境變量?
配置環(huán)境變量之前的狀況
在安裝好 java sdk 之后,如果我們需要運行 javac 對 java文件進行編譯,首先需要打開shell,然后通過執(zhí)行 java 安裝目錄的bin目錄下的命令工具。
# HelloJava目錄里有一個 Hello.java文件
$ ls
Hello.java
# java sdk安裝在這里
/Library/Java/JavaVirtualMachines/jdk1.8.0_211.jdk/Contents/Home
# 編譯 java 文件需要如下把整個安裝目錄帶上
$ /Library/Java/JavaVirtualMachines/jdk1.8.0_211.jdk/Contents/Home/bin/javac Hello.java
# 查看編譯結(jié)果,多了一個 .class文件
$ ls
Hello.class Hello.java
以上那樣需要把命令工具的完整路徑都輸入才能運行命令,效率太慢了,也容易出錯。
配置環(huán)境變量后,簡單高效!
配置好環(huán)境變量,那我們就可以在任何目錄下直接輸入命令就可以執(zhí)行。依然是這個例子,我們可以直接在開發(fā)目錄中執(zhí)行 javac 命令。
$ ls
Hello.java
$ javac Hello.java
$ ls
Hello.class Hello.java
環(huán)境變量是什么?環(huán)境變量的作用
MacOS下的環(huán)境變量有以下幾個文件管理
$ /etc/profile
$ /etc/paths
$ ~/.bash_profile
$ ~/.bash_login
$ ~/.profile
$ ~/.bashrc
配置文件的加載規(guī)則
1、前面2個/etc目錄下的都是系統(tǒng)級別的,系統(tǒng)啟動時會加載。
2、這3個按照從前往后的順序讀取,即
~/.bash_profile => ~/.bash_login => ~/.profile
如果.bash_profile文件存在,則后面2個文件會被忽略。
如果.bash_login文件存在,則后面.profile 文件會被忽略。
3、~/.bashrc 沒有上述規(guī)則,它是bash shell打開的時候載入的。
怎么配置環(huán)境變量?
1、在終端用 vim 在 home 目錄下創(chuàng)建 .bash_profile 文件
mac mojave以后的系統(tǒng)請配置 .zshrc文件,一樣的操作方法,只是將 .bash_profile 改為 .zshrc
$ cd
$ ls -alh
# 如果存在 .bash_profile 就不用執(zhí)行以下 touch 命令
# 如果不存在 .bash_profile,手動 touch 創(chuàng)建文件
$ touch .bash_profile
2、使用 vim 編輯 .bash_profile文件
$ cd
$ vim ~/.bash_profile
# 在打開的文件中,輸入 i 進入編輯模式
# .bash_profile文件格式如下
export 自定義環(huán)境變量名1 = 路徑1
export 自定義環(huán)境變量名2 = 路徑2
export 自定義環(huán)境變量名3 = 路徑3
export PATH=$PATH:路徑5
export PATH=路徑6:$PATH
export PATH=$PATH:$自定義環(huán)境變量名1:$自定義環(huán)境變量名2:$自定義環(huán)境變量名3
# 按 esc 退出編輯模式,輸入 :wq 保存并退出vim
注意一下:多個變量用英文冒號:隔開,$PATH要添加回去PATH中,否則系統(tǒng)內(nèi)部原有命令失效。
這里給出 vim 常用命令。在終端 輸入 vim 文件名
就會在終端打開該文件,這時輸入 i 即可進入編輯模式。
# vim常用的命令:
$ vim [filename.ext]
$ # 輸入 i 回車進入編輯模式
$ # 編輯內(nèi)容...
$ # 按 esc 鍵退出編輯模式,然后輸入以下帶冒號:的命令
$ :wq 保存后退出vi,若為 :wq! 則為強制儲存后退出(常用)
$ :w 保存但不退出(常用)
$ :w! 若文件屬性為『只讀』時,強制寫入該檔案
$ :q 離開 vi (常用)
$ :q! 若曾修改過檔案,又不想儲存,使用 ! 為強制離開不儲存檔案。
3、保存關(guān)閉后,在終端輸入以下命令讓配置生效
$ source .bash_profile
也可以通過重啟電腦來使它生效。
4、查看環(huán)境變量是否正確導(dǎo)入
$ echo $PATH
我的 ~/.bash_profile
export PATH=/usr/local/bin:/usr/local/sbin:~/bin:$PATH
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_211.jdk/Contents/Home
export ANDROID_HOME=/Users/wywar/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/platform-tools
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/build-tools/28.0.3
export PATH=$PATH:/Users/wywar/development/flutter/bin
export PUB_HOSTED_URL=https://pub.flutter-io.cn
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles
export PATH=$PATH:/usr/local/mongodb/bin
export PATH=$PATH:/usr/local/mysql-8.0.20-macos10.15-x86_64/bin
我的輸出
/usr/local/bin:
/usr/local/sbin:
/Users/wywar/bin:
/Users/wywar/development/flutter/bin:
/Users/wywar/.nvm/versions/node/v18.12.0/bin:
/usr/bin:
/bin:
/usr/sbin:
/sbin:
/Library/Apple/usr/bin:
/Users/wywar/Library/Android/sdk/platform-tools:
/Users/wywar/Library/Android/sdk/tools:
/Users/wywar/Library/Android/sdk/build-tools/28.0.3:
/usr/local/mongodb/bin:
/usr/local/mysql-8.0.20-macos10.15-x86_64/bin:
有輸出剛剛在 ~/.bash_profile 添加的環(huán)境變量,就說明成功了。下面可以試試在不同目錄下使用導(dǎo)出的命令了。
$ mongo
MongoDB shell version v4.2.2
執(zhí)行 mongodb 正常。執(zhí)行Flutter,正常輸出。至此環(huán)境變量配置完成!文章來源:http://www.zghlxwxcb.cn/news/detail-423120.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-423120.html
到了這里,關(guān)于MacOS環(huán)境配置 .zshrc .bashrc .bash_profile的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!