mac下nvm_Mac OS 使用 nvm 管理 node 与 npm 版本
nvm 是 Mac 下的 node 管理工具,有點類似管理 Ruby 的 rvm,如果是需要管理 Windows 下的 node,官方推薦是使用 nvmw 或 nvm-windows 。
以下具體說下 Mac 系統(tǒng)中的安裝與使用細節(jié)(Windows 系統(tǒng)僅供類比參考)。
1. 卸載已安裝到全局的 node/npm
如果之前是在官網(wǎng)下載的 node 安裝包,運行后會自動安裝在全局目錄,其中 node 命令在 /usr/local/bin/node ,npm 命令在全局 node_modules 目錄中,具體路徑為 /usr/local/lib/node_modules/npm
安裝 nvm 之后最好先刪除下已安裝的 node 和全局 node 模塊:
npm ls -g --depth=0 # 查看已經(jīng)安裝在全局的模塊,以便刪除這些全局模塊后再按照不同的 node 版本重新進行全局安裝
sudo rm -rf /usr/local/lib/node_modules # 刪除全局 node_modules 目錄
sudo rm /usr/local/bin/node # 刪除 node
cd /usr/local/bin && ls -l | grep "../lib/node_modules/" | awk '{print $9}'| xargs rm #刪除全局 node 模塊注冊的軟鏈
2. 安裝 nvm
cURL 安裝:
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash
Wget 安裝:
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.1/install.sh | bash
nvm 安裝好之后,暫時還不能用,需要添加環(huán)境變量,nvm 安裝好以后會提示添加環(huán)境變量到下圖中提示自己添加一下的代碼便是,如下圖,如此 nvm 就可以用了
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
直接在終端執(zhí)行以上命令后 nvm 只對本次有效,當終端關閉之后再打開將 nvm 失效,nvm 仍然不可用,需要寫入 /Users/[username]/ 目錄中的 .bash_profile 文件中才能生效;如果 /Users/[username]/ 目錄沒有 .bash_profile 文件,需要創(chuàng)建 .bash_profile 文件;
這樣 nvm 就可以用了,執(zhí)行 nvm --version 會看到 nvm 的安裝版本;
3. 使用安裝切換各版本 node/npm
4. 使用 .nvmrc 文件配置項目所使用的 node 版本
如果你的默認 node 版本(通過 nvm alias 命令設置的)與項目所需的版本不同,則可在項目根目錄或其任意父級目錄中創(chuàng)建 .nvmrc 文件,在文件中指定使用的 node 版本號,例如:
cd # 進入項目根目錄
echo "5.9" > .nvmrc # 創(chuàng)建 .nvmrc 文件并指定 Node.js 版本
nvm use # 無需指定版本號,會自動使用 .nvmrc 文件中配置的版本
node -v # 查看 Node.js 是否切換為對應版本
5. nvm 與 n 的區(qū)別
node 版本管理工具還有一個是 TJ 大神的 n 命令,n 命令是作為一個 node 的模塊而存在,而 nvm 是一個獨立于 node/npm 的外部 shell 腳本,因此 n 命令相比 nvm 更加局限。
由于 npm 安裝的模塊路徑均為 /usr/local/lib/node_modules ,當使用 n 切換不同的 node 版本時,實際上會共用全局的 node/npm 目錄。 因此不能很好的滿足『按不同 node 版本使用不同全局 node 模塊』的需求。
因此建議各位盡早開始使用 nvm ,以免出現(xiàn)全局模塊無法更新的問題。
總結(jié)
以上是生活随笔為你收集整理的mac下nvm_Mac OS 使用 nvm 管理 node 与 npm 版本的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 女生怎样减肥
- 下一篇: 模型存储在哪里_最强的模型工作收纳站「A