簡體   English   中英

npm掛起任何命令

[英]npm hangs on any command

我安裝了最新版本的Node.js(12.2 x64 windows)以管理員身份運行cmd並嘗試調用任何npm命令( npm -v除外),cmd窗口掛起。 Ctrl + C之后它返回

 Terminate batch job (Y/N)? 

在此輸入圖像描述

我試圖離開cmd幾個小時,但沒有給出一些結果。 這很奇怪,因為node.exe進程很難消耗CPU和內存。

我試圖多次重新安裝node.js但沒有成功。
我甚至無法獲得一些調試信息。

我通過rdp連接我在VM上遇到了這樣的問題。 在我的筆記本電腦上安裝的相同版本正常 在我的VM上我有卡巴斯基防病毒軟件,但在關閉它之后我得到了相同的結果。

有人面對這樣的問題嗎? 有沒有辦法獲得更多的信息問題? 能否請你推薦一些解決方法?

我終於解決了我的問題。 根據我們當地的閱讀文件的建議

Node.js(使用NPM)注意:在Windows服務器計算機上,而不是在用戶%APPDATA%路徑上安裝節點模塊,最好安裝在全局路徑上,例如c:\\ npm。 這可以通過npm命令實現:$ npm config set prefix'c:\\ npm'這在個別開發人員的機器上不是必需的。

我已經執行了npm config set prefix 'c:\\npm'

結果它在我的.npmrc文件中添加了prefix="'c:\\\\npm'"

這使得node.js真的很瘋狂。 我花了大約一個小時來調試所有這些js腳本npm.js code.js等...發現它用'c:\\\\npm'\\etc調用mkdirp並且它永遠循環進程。

如果將來有人會遇到這個問題你需要找到npmrc文件刪除它並刪除節點的所有配置,刪除節點並安裝它,這應該解決這個問題。 刪除節點時,某些配置不會被刪除,因此您必須手動刪除它。

它也適用於我:我在Windows 10上僅為我的用戶安裝了節點,並通過使用完整路徑"c:\\Program Files\\nodejs\\npm"調用它來設法使用npm

我解決了使用"c:\\Program Files\\nodejs\\npm" config set prefix "c:\\Program Files\\nodejs" (將前綴設置為npm的完整路徑)

結果是:

    λ cat c:\Users\<my_user_name>\.npmrc
    prefix=c:\Program Files\nodejs

現在eveything工作正常。

如果未正確設置前綴。

只想指出那些評論 - 如果你無法訪問命令行npm,那么顯然你無法運行npm config

打開notepad $HOME/.npmrc並鍵入notepad $HOME/.npmrc ,並編輯其中的prefix=...的行,並將其更改為有效的行。

為清楚起見,當您致電時:

npm config set prefix 'c:\npm'

你需要有'包裝路徑,但你需要從.npmrc文件中刪除它們,以便npm命令可以工作。 因此,.npmrc文件中的結果行應如下所示:

prefix="c:\\npm"

只需刪除User /%UserProfile%上的.nprmc文件,現在嘗試命令,如果它甚至重新安裝一次。

暫無
暫無

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

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