npm全局安裝
npm i -g xxx
yarn 全局安裝
yarn global add xxx
然而你可能會發現npm全局安裝后的命令可以直接使用,而yarn卻不行,這是為什么呢?
我們來查看下npm和yarn的bin目錄
bin是binary的縮寫,意思是存放二進制可執行文件的目錄,比如exe,msi等,而npm,yarn全局安裝的命令就會從這里面開始查找可執行文件。
那為什么系統會從這個路徑下進行查找可執行文件呢?這就要說下環境變量。
簡單的說計算機在執行命令的時候是在環境變量找對應的命令的位置的。如果不正確設置環境變量就不能正確使用相應的命令。如果覺得麻煩可以安裝IDE,這樣一般就不用自己手動設置環境變量了
如果執行某個命令,系統無法在當前文件夾里找到對應的.exe(可執行文件),那么系統就會去環境變量path包含的路徑找挨個找看是否能知道對應的.exe,一旦找到第一個對應的.exe就運行命令,其他的路徑下就不找了。如果找不到你就會看到“系統找不到某某命令”的提示。
而在安裝node的過程,安裝進程會自動的增加node和npm的路徑到環境變量,如下圖:
所以我們使用npm安裝的全局命令,可以直接使用,無需再配置環境變量。
打開bin目錄可以發現我們剛剛全局安裝的文件
注意:使用cnpm安裝的yarn,如果要卸載,需要使用npm卸載,cnpm卸載不了,卸載完成,需要重啟命令行工具。
總結下 yarn的安裝方法:
方法1. 官網下載msi文件,雙擊安裝,安裝成功后既可全局使用yarn命令
方法2. 使用npm安裝yarn
npm i -g yarn
注意:
- 使用方法1安裝后需要重啟命令行工具,命令行工具會重新加載環境變量。
- 方法1使用的是yarn的安裝目錄 C:\Program Files (x86)\Yarn\bin\ 尋找到可執行文件,同時方法1會新建bin目錄並在用戶變量內增加bin地址
- 方法2使用的是npm的bin地址啟動
- 方法2在安裝新命令時,才去新建yarn的bin目錄
- 使用方法2,yarn全局安裝命令需要配置環境變量,將 yarn global bin 的地址配置到用戶變量內,然后重啟命令行工具
yarn和npm屬於兩個不同的模塊,不要把依靠他們安裝的模塊混在一起了,如果一個模塊的安裝比較混亂,導致這個模塊的命令不能全局使用,可以嘗試一下方法:
- 在npm, cnpm,yarn中分別卸載該模塊
- 查看計算機程序和功能中是否安裝此模塊軟件,進行卸載
- 重新安裝
- 重啟命令行工具
- 如果還不行,就檢查環境變量,看該模塊的目錄是否在環境變量中,如果不在,進行添加,然后再重啟命令行工具