Javascript Npm在不同位置的节点js上安装全局模块

Javascript Npm在不同位置的节点js上安装全局模块,javascript,node.js,npm,Javascript,Node.js,Npm,我使用的是unix操作系统ubuntu,在安装全局模块时遇到问题 当我试图查找node_modules文件夹的位置时,我发现npm在中安装了我的一些全局模块 /usr/lib/node_modules 其中一些安装在 /usr/local/lib/node_modules 在使用这个全局模块之前,我没有任何问题,直到我尝试安装一个生成器时,也就是我第一次想到查看目录的时候,因为在安装了生成器之后,它说我还没有安装生成器 奇怪的是,当我尝试一些模块时,它们工作得非常好,除了其他模块,说它没有安

我使用的是unix操作系统ubuntu,在安装全局模块时遇到问题

当我试图查找node_modules文件夹的位置时,我发现npm在中安装了我的一些全局模块

/usr/lib/node_modules
其中一些安装在

/usr/local/lib/node_modules
在使用这个全局模块之前,我没有任何问题,直到我尝试安装一个生成器时,也就是我第一次想到查看目录的时候,因为在安装了生成器之后,它说我还没有安装生成器

奇怪的是,当我尝试一些模块时,它们工作得非常好,除了其他模块,说它没有安装

有没有办法从nodejs中卸载/删除/清理我的电脑,包括它的模块,然后重新安装,这样它就只需要使用一个目录,这样就不会有任何混乱


你认为npm为什么要在两个不同的目录中安装这些东西。

在我看来,你已经安装了两个不同版本的nodejs。可能是打包版本,然后是新版本

这是因为您的节点文件夹可能设置为/usr/local/lib/node_modules 查找模块时,节点始终遍历文件夹树,因此如果您执行require('imNotHere'),它将查找:

/usr/local/lib/node_modules/imNotHere
/usr/local/node_modules/imNotHere
/usr/node_modules/imNotHere
/node_modules/imNotHere
在失败之前。 在您的设置中,/usr/lib/node_中的模块仍将被此

的可能副本捕获