2016-01-09 40 views
1

我在全球安裝了gulpbower爲什麼`npm list -g --depth = 0`中缺少模塊?

由於某種原因,它們都不出現在npm list

我以錯誤的方式解決這個問題嗎?我錯過了什麼?

[email protected]:~$ npm list -g --depth=0 
/usr/lib 
├── [email protected] 
├── [email protected] 
├── [email protected] 
├── [email protected] 
├── [email protected] 
└── [email protected] 

[email protected]:~$ npm list -g | grep bower 
[email protected]:~$ bower -v 
1.7.2 
[email protected]:~$ which bower 
/usr/local/bin/bower 
[email protected]:~$ ll `which bower` 
lrwxrwxrwx 1 root root 35 Jan 6 12:05 /usr/local/bin/bower -> ../lib/node_modules/bower/bin/bower* 
[email protected]:~$ ll /usr/local/lib/node_modules/ 
total 20 
drwxr-xr-x 5 nobody nathanbrauer 4096 Jan 6 16:12 ./ 
drwxr-xr-x 6 root root   4096 Jan 6 11:41 ../ 
drwxr-xr-x 6 nobody nathanbrauer 4096 Jan 6 12:05 bower/ 
drwxr-xr-x 4 nobody nathanbrauer 4096 Jan 6 16:12 es6-promise/ 
drwxr-xr-x 6 nobody nathanbrauer 4096 Jan 6 11:41 gulp/ 

回答

1

它看起來像之類的東西咽和鮑爾都安裝在/usr/lib,而你的文件的其餘均在/usr/local/libThis answer暗示如果你的$PATH設置正確(並且你沒有通過sudo進行安裝),那麼npm通常會通過符號鏈接安裝到/usr/local/lib中,所以大概你在過去的某個時候改變了這個變量。

如果npm root不返回/usr/local/lib/node_modules然後重置prefix變量與npm config set prefix /usr/local應該做的伎倆。

我只是刪除你在/usr/lib並重新安裝一旦你的prefix設置正確。