簡體   English   中英

安裝新版本后卡在舊版本上

[英]Stuck on an older version after installed a new one

node --version
v4.5.0

npm --version
2.15.9

node-gyp --version
v3.4.0

which node
/home/admin/.nvm/versions/node/v4.5.0/bin/node

出於某種原因,在運行sudo npm install -g node-gyp gyp - node-gyp 安裝節點 v0.10.25 后:

npm WARN engine cryptiles@2.0.5: wanted: {"node":">=0.10.40"} (current: {"node":"v0.10.25","npm":"1.3.10"})
npm WARN engine boom@2.10.1: wanted: {"node":">=0.10.40"} (current: {"node":"v0.10.25","npm":"1.3.10"})
npm WARN engine hoek@2.16.3: wanted: {"node":">=0.10.40"} (current: {"node":"v0.10.25","npm":"1.3.10"})

我訪問了/home/admin/.nvm/versions/node/並找到了這些文件夾: v4.4.4, v4.4.7, v4.5.0

有人可以觸發這個問題嗎? v0.10.25 版本在哪里,我該如何擺脫它?

問題是,作為普通用戶,您使用的是nvm 、Node 版本管理器,它允許您獨立於系統安裝的 Node 版本(在您的情況下是0.10.25)。

當您使用sudo安裝node-gyp ,您正在“切換”到不同的用戶(root),nvm 設置不適用於該用戶。 因此,將使用系統安裝的 Node 版本,從而觸發您遇到的錯誤。

你有幾個解決方案:

  • 安裝node-gyp時不要使用sudo 因為您使用的是nvm ,所以您已經擁有以普通用戶身份安裝它所需的所有權限。
  • 更新系統安裝的 Node.js 版本。 如果可能,這取決於您使用的發行版; 一些 Linux 發行版僅在其主要發行版中提供過時的 Node 版本。 在這種情況下,請查看Nodesource 二進制發行版,它為最常見的 Linux 發行版提供了最新的 Node 二進制文件。

您可能需要清理/刪除其他版本的 Node.js。 也許最簡單的方法是刪除所有內容,然后重新安裝。 npmjs.org 站點上有一個腳本( install.sh )。 只需在您的終端上運行它,然后它應該刪除所有舊安裝並安裝最新版本。

試一試,讓我知道這是否有幫助。 它似乎在這里解決了密切相關的問題。

我有同樣的問題。 我發現我有一個舊版本的 node.exe 文件,在 PATH(環境變量)中,我有一個指向這個舊 node.exe 文件夾的鏈接。 一旦從路徑中刪除它(並重新啟動 cmd),問題就解決了

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM