2016-03-19 50 views
12

我有節點v.4.4 npm v.2.14.20(默認與Windows安裝程序捆綁在一起)。我的操作系統:Windows 7 64bit。硬件:戴爾筆記本電腦,16GB RAM,SSD,核心i7。超慢節點npm命令

我正面臨npm非常慢的問題。例如,當我想檢查節點的版本

node --version 
v4.4.0 

我收到毫秒內輸出4.4.0。 但是當我鍵入

npm --version 

我需要等待可笑8-15秒接收的輸出!每個npm命令都是一樣的。

我試過了:更新npm(到最新的3.x版本),更新節點到5.9.0,我也試過我的運氣與x86版本 - 同樣的事情。

  1. 任何線索是什麼導致這樣的「睡眠」(這只是與npm,每隔cmd命令工作正常,系統工作正常)?
  2. 我會感謝任何提示我怎麼能調試這件事,看看有什麼引擎蓋
+0

有沒有這樣的運氣? http://stackoverflow.com/questions/29395211/npm-install-extremly-slow-on-windows – Rabea

+0

nope,我試圖禁用IPv6和賽門鐵克端點保護(這是我在這檯筆記本上) - 沒有任何影響。但是,當我嘗試如。 'npm view grunt'是第二次拍攝的兩倍(我猜是從緩存中獲取)大約需要6秒(所以比第一個快16秒左右)... – Mic

+0

除了上述之外,還有其他更新嗎?謝謝! – MoMo

回答

1

我打賭你在你的PATH有很多項下回事。這是該場景的常見症狀。

在你的終端,運行:

echo "$PATH" 

如果輸出中有超過8個或9冒號,或者如果有喜歡在那裏的根目錄/大目錄,那麼這很可能也是被罪魁禍首。

作爲比較的基礎,我的精心雕琢PATH在MacOS是:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 

如果我跑which npm,輸出爲:

/usr/local/bin/npm 

這告訴我,我的npm位於早期在我的PATH,這對性能很重要,因爲PATH從左到右搜索存在npm在每個目錄內。

你可以快速嘗試我PATH從上面沒有任何永久性的後果,由簡單地運行:

OLDPATH="$PATH" 
PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin' 

現在試着運行這在以前是快和慢的命令,看看是否有任何區別。

如果你開始看到「命令未找到」錯誤,請嘗試逐步增加東西還給你PATH或只需運行:

PATH="$OLDPATH" 

否則,如果性能保持不變,那麼它可能不是你的PATH。但如果情況有所改善,請繼續閱讀以使其永久。

以最適合你的PATH爲例,並將它放在你的shell啓動文件中。這通常位於~/.bashrc~/.bash_profile。嘗試找到已有PATH=...行的啓動文件,註釋掉現有行(確保添加說明註釋),然後插入具有更好值的類似行。

+0

我敢打賭,這是Unix或類似的東西。但是這個問題是關於Windows而不是Unix的 – SteveFest