找不到兼容版本
你有一個過時的npm。請更新到最新穩定的npm。
權限錯誤
npm ERR! code EPERM
npm ERR! code EACCES
- 修復緩存的權限
sudo chown -R $(whoami) "$HOME/.npm"。 - 再試一次
sudo。例如sudo npm install express -g。(之后您可能需要修復緩存權限,如上所述)。 - 重新安裝節點,因此它不需要sudo。
使用0.8的Travis項目無法升級到npm 2
在你的.travis.yml替換中:
有了這個:
這個建議是基於這個特拉維斯問題,來自@simondean禮貌。
Error: ENOENT, stat 'C:\Users\<user>\AppData\Roaming\npm' 在Windows 7上
這是joyent / node#8141的結果,並且是Windows的Node安裝程序的問題。解決方法是確保C:\Users\<user>\AppData\Roaming\npm存在並且可以使用普通用戶帳戶寫入。
沒有空間
npm ERR! Error: ENOSPC, write
您正在嘗試安裝在沒有空間或沒有寫入權限的驅動器上。
- 釋放一些磁盤空間或
- 將tmp文件夾設置在具有更多空間的位置:
npm config set tmp /path/to/big/drive/tmp或 - 自己構建節點並將其安裝在可寫空間很大的地方。
沒有git
npm ERR! not found: git
ENOGIT
你需要安裝git。
由於路徑長度問題,在Windows上運行Vagrant框失敗
@drmyersii經歷了一個聽起來很麻煩的試驗和錯誤,想出了一個涉及Windows長路徑和一些自定義Vagrant配置的工作解決方案:
這是我實現它的提交,但我會繼續發布代碼的主要代碼片段:
配置。vm 。提供者 “ virtualbox ”做 | v |v 。自定義 [ “ sharedfolder ”,“添加”,: ID ,“ --name ”,“ WWW ”,“ --hostpath ”,((“ // / ” + 文件。目錄名(__FILE__ )+ “ / WWW ”)。GSUB (“ / ”,“ \\ ” ]結束配置。vm 。提供 : shell ,內聯:“ mkdir / home / vagrant / www ”配置。vm 。提供 : shell ,內聯:“ mount -t vboxsf -o uid =`id -u vagrant`,gid =`getent group vagrant | cut -d:-f3`> www / home / vagrant / www ”,run :“ always “在上面的代碼中,我將附加
\\?\到當前目錄的絕對路徑。這實際上會強制Windows API允許增加MAX_PATH變量(通常上限為260)。詳細了解最大路徑。這是在共享文件夾創建期間發生的,這是由VBoxManage有意處理而不是Vagrant的“synced_folder”方法。最后一點是不言自明的; 我們創建新的共享文件夾,然后確保每次訪問或觸摸機器時都會掛載它,因為Vagrant喜歡在每次加載時重新加載其掛載/共享文件夾。
npm僅使用git:和ssh+git:GitHub repos的URL,破壞代理
@LaurentGoderre用一些Git 技巧解決了這個問題:
我通過運行以下兩個命令修復了我的幾個同事的這個問題:
git config --global url."https://github.com/".insteadOf git@github.com: git config --global url."https://".insteadOf git://我們注意到的一件事是
.gitconfig使用的並不總是預期的,所以如果你在一台機器上修改了共享驅動器的主路徑,你需要確保.gitconfig你的共享驅動器和c:\users\[your user]\
SSL錯誤
npm ERR! Error: 7684:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:openssl\ssl\s23_clnt.c:787:
您正在嘗試將SSL與未加密的端點進行通信。通常,這是由於代理 配置 錯誤(另請參閱此幫助,如果過時,指南)。在這種情況下,您不希望禁用strict-ssl- 您可能需要設置CA / CA文件以用於您的代理,但最好花些時間來解決這個問題,而不是禁用SSL保護。
npm ERR! Error: SSL Error: CERT_UNTRUSTED
npm ERR! Error: SSL Error: UNABLE_TO_VERIFY_LEAF_SIGNATURE
如果您正在運行Node 0.6,則會發生此問題。請升級到0.8或以上的節點。看到這個職位的詳細信息。
您也可以嘗試這些解決方法:npm config set ca ""或npm config set strict-ssl false
npm ERR! Error: SSL Error: SELF_SIGNED_CERT_IN_CHAIN
或者:
- 升級您的npm版本
npm install npm -g --ca="" - 告訴你當前版本的npm使用已知的注冊商
npm config set ca=""
如果這不能解決問題,那么您可能擁有SSL攔截代理。(例如,https://github.com/npm/npm/issues/7439#issuecomment-76024878)
SSL攔截代理
未解。請參閱https://github.com/npm/npm/issues/9282
找不到/服務器錯誤
npm http 404 https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.7.0.tgz
npm ERR! fetch failed https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.7.0.tgz
npm ERR! Error: 404 Not Found
npm http 500 https://registry.npmjs.org/phonegap
- 這很可能是一個臨時的npm注冊表故障。檢查npm服務器狀態,稍后再試。
- 如果錯誤仍然存在,則發布的包可能已損壞。聯系包所有者,讓他們發布新版本的包。
無效的JSON
Error: Invalid JSON
npm ERR! SyntaxError: Unexpected token <
npm ERR! registry error parsing json
- 可能的臨時npm注冊表故障,或損壞的本地服務器緩存。運行
npm cache clean和/或稍后再試。 - 這可能是由對代表提供HTML響應的公司代理引起的
package.json。檢查npm的代理配置。 - 檢查您嘗試安裝的軟件包是否存在問題(例如無效
package.json)。
輸出中有很多ENOENT/ ENOTEMPTY錯誤
編寫npm是為了在安裝時有效地使用資源,其中一部分是它嘗試同時執行盡可能多的事情。有時這會導致競爭條件和其他同步問題。從npm 2.0.0開始,解決了大量這些問題。如果你看到ENOENT lstat,ENOENT chmod,ENOTEMPTY unlink,或在你的日志輸出類似的東西,嘗試更新NPM到最新版本。如果問題仍然存在,請查看npm / npm#6043並查看是否有人已經討論過您的問題。
cb() never called! 使用shrinkwrapped依賴項時
看一下#5920號問題。我們正在努力修復這個,但這是一個相當微妙的競爭條件,它花了我們一點時間。您可以嘗試將這已在npm版本中修復npm-shrinkwrap.json文件移開,直到我們將其修復為止。npm@2.1.5,因此更新為npm@latest。
npm login 錯誤
有時npm login失敗沒有明顯的原因。首先要登錄https://www.npmjs.com/login並檢查您的電子郵件地址是否npmjs.com與您提供的電子郵件地址相符npm login。
如果那不是問題,或者您正在看到該消息"may not mix password_sha and pbkdf2",那么
- 登錄https://npmjs.com/
- 通過https://npmjs.com/password更改密碼- 您甚至可以將其“更改”為相同的密碼
- 清除與登錄相關的字段
~/.npmrc- 例如,通過運行sed -ie '/registry.npmjs.org/d' ~/.npmrc npm login
它通常似乎工作。
有關此問題的歷史記錄,請參閱https://github.com/npm/npm/issues/6641#issuecomment-72984009。
npm 掛在Windows上 addRemoteTarball
檢查是否在您的設置中設置了兩個臨時目錄.npmrc:
> npm config ls -l
查找定義tmpconfig變量的行。如果您找到多個,請刪除除其中一個之外的所有內容。
有關此異常問題的詳細信息,請參閱https://github.com/npm/npm/issues/7590。
其他
- 只需運行
npm cache clean並再次嘗試即可解決一些奇怪的問題。 - 如果您遇到問題
npm install,請使用該-verbose選項獲取更多詳細信息。
