Node 和 NodeJS 有不同的版本

Node 和 NodeJS 有不同的版本

我使用這些命令成功更新/安裝了最新版本的 Node js(官方curl方法對我不起作用):

sudo npm cache clean -f
sudo npm install -g n
sudo n stable

sudo ln -sf /usr/local/n/versions/node/<VERSION>/bin/node /usr/bin/node

但是,我的node和nodejs的版本變得不同:

$ node --version
v5.0.0
$ nodejs --version
v0.10.25

看來新節點已安裝在中/usr/local/bin/node,所以我嘗試了:

sudo ln -s /usr/bin/nodejs /usr/local/bin/node

但它返回:

ln: failed to create symbolic link ‘/usr/local/bin/node’: File exists

我也使用這個連結:

$ sudo ln -s /usr/bin/nodejs /usr/bin/node
ln: failed to create symbolic link ‘/usr/bin/node’: File exists

我將使用一些依賴 的框架node,例如Ionic.它將使用哪個節點版本?

我該怎麼做才能解決這個問題?

非常感謝你的幫助

答案1

為我解決同樣問題的步驟:

sudo apt-get remove nodejs
sudo ln -s /usr/bin/node /usr/bin/nodejs

解釋

您的電腦上安裝了兩個版本的nodejs,因此您需要刪除其中一個。您的情況:

node v5.0.0 - you will keep this one
nodejs v0.10.25 - this you can remove

您可以nodejs透過命令刪除包apt-get remove。這也將刪除該文件/usr/bin/nodejs,並且您將不會再次收到錯誤訊息。

現在您可以建立一個名為“/usr/bin/nodejs”的符號鏈接,該連結指向來源“/usr/local/bin/node”。在您的範例中,「從」和「到」的路徑順序錯誤

sudo ln -s source_file myfile

有關連結創建的更多資訊:符號連結如何運作

答案2

錯誤:

ln: failed to create symbolic link ‘/usr/bin/node’: File exists

通常是在您確實有兩個版本的 Nodejs 時引起的,一個版本的別名為 ,node另一個版本的別名,正如我們在命令和 的nodejs結果中看到的那樣:node --versionnodejs --version

$ node --version
v5.0.0
$ nodejs --version
v0.10.25

因此您無法為已存在的檔案建立符號連結。

要解決此問題,您需要使用以下方法完全刪除這兩個套件:

sudo apt-get purge node
sudo apt-get purge nodejs
sudo rm -rf bin/node bin/node-waf include/node lib/node lib/pkgconfig/nodejs.pc share/man/man1/node

nodejs並使用以下命令僅重新安裝軟體包:

sudo apt-get install nodejs

並使用以下命令建立符號連結:

ln -s /usr/bin/nodejs /usr/bin/node

nodejs-legacy使用以下命令安裝可以解決此問題的軟體:

sudo apt-get install nodejs-legacy 

答案3

對我來說,node指令是安裝的 NodeJS nvmnodejs指令是使用安裝的 NodeJSapt-get

相關內容