本地NPM模块不再为我正确安装在我的项目中node_modules dir。这刚刚开始发生。本地NPM模块未正确安装
我成立了一个测试目录与的package.json:
{
"name": "test",
"version": "0.0.0"
}
然后运行这个命令:
npm install grunt --save-dev
这是我在node_modules得到目录:
打开咕噜目录,你可以看到有没有node_modules:
一些出现在根的NPM模块都似乎是属于咕噜NPM模块 NPM模块,有些我不知道他们来自哪里?例如。 缩写,esprima,优美-FS等
我曾经得到这样的:
project
│
└───node_modules
| │
| └───grunt
|
└───package.json
我已经试过完全从我的机器中取出的Node.js和NPM(的Mac OS X 10.10.5)遵循这些instructions。然后将其重新安装在Homebrew(以前安装的位置)之外,这并没有改变任何东西。然后再次完全删除Node.js和NPM并重新安装它与 Homebrew,但这次我申请了this。这再次没有解决任何问题。
不确定发生了什么事?
OK感谢您的解释。我想我不明白这个部分:_“'abbrev'不是grunt的直接依赖,但可能它是一些其他依赖的依赖。”_如果我只有** grunt **,那么可以使用这些依赖呢?这只是让我感觉破了。 – crite
不,它肯定没有坏:)咕噜依赖'nopt'包依赖'abbrev'包。由于现代npm更加依赖于平面依赖树,所以你最终将所有这些依赖关系放在一个目录中。 OTOH,如果使用较旧的npm,您最终会在./node_modules/grunt/nopt中找到'nopt',并在./node_modules/grunt/nopt/node_modules/abbrev中找到'abbrev' –