溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

mac中如何使用NVM管理不同node版本

發(fā)布時(shí)間:2021-07-01 14:44:36 來(lái)源:億速云 閱讀:464 作者:小新 欄目:web開(kāi)發(fā)

這篇文章給大家分享的是有關(guān)mac中如何使用NVM管理不同node版本的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過(guò)來(lái)看看吧。

Mac 下通過(guò) brew install nvm 所安裝的 nvm ,由于安裝路徑不同,無(wú)法正確啟用。建議使用 brew uninstall nvm 卸載掉之后,通過(guò)本文的方案重新安裝一次。

卸載已安裝到全局的 node/npm

如果之前是在官網(wǎng)下載的 node 安裝包,運(yùn)行后會(huì)自動(dòng)安裝在全局目錄,其中

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 版本重新進(jìn)行全局安裝

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 模塊注冊(cè)的軟鏈

通過(guò)nvm來(lái)管理

場(chǎng)景:同組的同事使用node版本是5.7.0,而本機(jī)安裝了node 7.2.0,如何兼容?

使用nvm管理。

  • 使用Homebrew安裝nvm

  • 使用nvm安裝Node.js

  • 使用nvm無(wú)痛切換Node.js版本

安裝nvm

brew install nvm

使nvm生效

source $(brew --prefix nvm)/nvm.sh

或者:

echo "source $(brew --prefix nvm)/nvm.sh" >> .bash_profile
. ~/.bash_profile

使用nvm安裝Node.js

nvm ls-remote

查看可用版本:

v0.10.20
v0.10.21

安裝:

nvm install <version>

比如:

nvm install v5.7.0

還有

nvm install v7.2.0

使用nvm無(wú)痛切換Node.js版本

nvm會(huì)把各個(gè)版本的node安裝在/usr/local/opt/nvm底下??梢钥纯丛撃夸浀紫路帕四男〇|西:

 $ ls /usr/local/opt/nvm
INSTALL_RECEIPT.json LICENSE.md alias bin nvm.sh v5.7.0 v7.2.0

我們可以發(fā)現(xiàn)透過(guò)nvm安裝這兩個(gè)版本,事實(shí)上會(huì)在nvm目錄下另外建立了v5.7.0以及v7.2.0兩個(gè)目錄來(lái)分別存放node的binary檔。又nvm會(huì)在你的$PATH最前面安插指定版本的目錄,透過(guò)這個(gè)方式你在使用node指令時(shí)就會(huì)用指定的版本來(lái)運(yùn)作了。

實(shí)際確認(rèn)PATH的值看看:

 $ echo $PATH
/usr/local/opt/nvm/v5.7.0/bin: ...

查看當(dāng)前可用版本

nvm ls

切換版本:

nvm use <version>

比如

nvm use --delete-prefix v5.7.0

也可以偷懶一點(diǎn),不用打完整的版號(hào):

$ nvm use --delete-prefix 5.7
Now using node v5.7.0

切換成別的版本:

$ nvm use --delete-prefix 7
Now using node v7.2.0

不過(guò)問(wèn)題來(lái)了,如果你另外開(kāi)一個(gè)shell視窗,並輸入nvm,會(huì)發(fā)現(xiàn)current version是空的:

 $ nvm ls

 v0.10.24
 v0.11.10
current:

這是因?yàn)槔胣vm use指令只會(huì)在當(dāng)前的shell生效,當(dāng)你開(kāi)了新的shell就會(huì)發(fā)現(xiàn)$PATH的值已經(jīng)不包含剛才設(shè)定的node目錄了。

要解決這個(gè)問(wèn)題就是利用

$ nvm alias default <version>

來(lái)設(shè)定一個(gè)預(yù)設(shè)的node版本:

 $ nvm alias default 5.7.0
default -> 5.7 (-> v5.7.0)

此時(shí)再打開(kāi)另一個(gè)shell視窗,就可以直接使用你所設(shè)定的node版本了。

感謝各位的閱讀!關(guān)于“mac中如何使用NVM管理不同node版本”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI