我在 Ubuntu 12.10 上安装了 node.js 0.8.14。我在我的主目录中创建了一个带有子目录的目录node_modules
。我想在那里安装一些本地节点模块,但
npm install myModule
在这个目录中运行会安装这个模块(与安装带有标志/usr/local/lib/node_modules/
的模块相同的行为-g
中没有节点路径.bashrc
。
知道如何安装本地节点模块吗?
经过一些进一步的研究,我找到了解决方案。
运行命令npm config ls
显示默认配置global=false
(您会看到默认配置npm config ls -l
)被global=true
in/home/vsdev/.npmrc
和覆盖/usr/local/etc/npmrc
。
恢复它以global=false
解决问题。
这很奇怪。
-g
参数。which npm
alias | grep npm
npm install load all in node_modules 那么它可能是第 3 版的行为http://blog.npmjs.org/post/110924823920/npm-weekly-5或@vsdev 提到的,所以一旦你确定它是第3版的行为并且你想要和它一起去,然后它就很好,其他的就在下面
1-卸载所有模块..进入项目中的node_modules文件夹,然后执行:npm uninstall *
2- 告诉 npm 使用旧版捆绑安装此安装:
npm install --legacy-bundling 一个“永久”的替代方案:
将您的 npm 配置设置为始终使用旧版捆绑...
npm set legacy-bundling=true
..并照常运行:
npm 安装
*使用遗留捆绑获取依赖项将花费更多时间,因为将安装相同依赖项的许多不同版本。