有人能告诉我在哪里可以找到我用npm安装的Node.js模块吗?
当前回答
在早期的NPM版本中,模块总是放在/usr/local/lib/node或者你在.npmrc文件中指定NPM根目录的任何地方。然而,在NPM 1.0+中,模块被安装在两个地方。您可以在/中将模块安装到应用程序的本地。Node_modules或者你可以全局安装它们,这将使用上面的。
更多信息请访问https://github.com/isaacs/npm/blob/master/doc/install.md
其他回答
我在寻找真正的配置时开始发狂,所以这里是linux上所有配置文件的列表:
/etc/npmrc /home/youruser/.npmrc /root/.npmrc 。/。NPMRC在当前目录下的包旁边。json文件(感谢@CyrillePontvieux)
在windows上:
c/Program\ Files/nodejs/node_modules/npm/npmrc
然后在这个文件中配置前缀:
prefix=/usr
该前缀在linux中默认为/usr,在windows中默认为${APPDATA}\npm
节点模块在$prefix树下,路径中需要包含$prefix/bin
可能有一个问题:
在全局安装时,首先使用“sudo su”,然后使用/root/。可以使用NPMRC ! 当您在本地使用而不使用sudo时:对于您的用户,它是/home/youruser/.npmrc. 当路径不代表前缀时 当你使用npm set -g prefix /usr时,它会设置/etc/npmrc全局,但不会覆盖本地
这里是所有缺失的信息,以查找在哪里配置了什么。希望我讲得够详尽了。
在windows上,我使用npm list -g来查找它。默认情况下,我的(全局)包被安装到C:\Users\[Username]\AppData\Roaming\npm。
对于全局安装的模块:
其他答案给出了特定于平台的回答,但一个通用的回答是:
当你用npm install -g something安装全局模块时,npm会查找一个配置变量前缀来知道该在哪里安装模块。
你可以通过运行npm config get prefix来获取这个值
要显示该文件夹中所有可用的全局模块,请使用npm ls -g——depth 0 (depth 0表示不显示它们的依赖项)。
如果你想改变全局模块的路径,使用npm config edit并在文件中添加prefix = /my/npm/global/modules/prefix或使用npm config set prefix /my/npm/global/modules/prefix。
当你使用一些像nodist这样的工具时,它们会改变全局npm模块的平台默认安装路径。
在Ubuntu 14.04中,它们安装在
/usr/lib/node_modules
要获得没有依赖项的紧凑列表,只需使用
npm list -g --depth 0
推荐文章
- 我如何使用Jest模拟JavaScript的“窗口”对象?
- 我如何等待一个承诺完成之前返回一个函数的变量?
- CALL_AND_RETRY_LAST分配失败-进程内存不足
- 在JavaScript中根据键值查找和删除数组中的对象
- 使嵌套JavaScript对象平放/不平放的最快方法
- 在Ubuntu上安装Node.js
- 如何以及为什么'a'['toUpperCase']()在JavaScript工作?
- 有Grunt生成index.html不同的设置
- 文档之间的区别。addEventListener和window。addEventListener?
- 如何检查动态附加的事件监听器是否存在?
- 使用express.js代理
- 如何写setTimeout与参数Coffeescript
- 将JavaScript字符串中的多个空格替换为单个空格
- JavaScript: override alert()
- 重置setTimeout