node.js版本管理工具n無效的原理和解決方法

簡介

n 是 node 的一個模塊,可以用它來管理 node 的各種版本。類似 Python 中的 pyenv 和 Ruby 的 rbenv。n 的作者是著名的TJ大神。

通過 npm 安裝 n:

npm install -g n

查看當前 node 版本:

$ node -v
v4.2.4

通過 n 安裝指定版本:

$ n 4.4.4
install : node-v4.4.4
    mkdir : /opt/node/n/versions/node/4.4.4
    fetch : https://nodejs.org/dist/v4.4.4/node-v4.4.4-linux-x64.tar.gz
###################################100.0%
  installed : v4.2.4

再查看當前 node 版本:

$ node -v
v4.2.4 #和原來一樣

解決方法

如果你跟我一樣,發(fā)現(xiàn) node 版本沒有任何變化,那最有可能的情況就是,你的node的安裝目錄和 n 默認的路徑不一樣。

查看 node 當前安裝路徑:

$ which node
/opt/node/bin/node #舉個例子

而 n 默認安裝路徑是 /usr/local,若你的 node 不是在此路徑下,n 切換版本就不能把bin、lib、include、share 復制該路徑中,所以我們必須通過N_PREFIX變量來修改 n 的默認node安裝路徑。

編輯環(huán)境配置文件:

vim ~/.bash_profile

將下面兩行代碼插入到文件末尾:

export N_PREFIX=/opt/node #node實際安裝位置
export PATH=$N_PREFIX/bin:$PATH

:wq保存退出;

執(zhí)行source使修改生效。

$ source ~/.bash_profile

確認一下環(huán)境變量是否生效:

echo $N_PREFIX
/opt/node

這時候我們需要重新安裝:

$ n 4.4.4
install : node-v4.4.4
    mkdir : /opt/node/n/versions/node/4.4.4
    fetch : https://nodejs.org/dist/v4.4.4/node-v4.4.4-linux-x64.tar.gz
##############100.0%
  installed : v4.4.4

再查看當前 node 版本:

$ node -v
v4.4.4

說明修改成功。

?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容