我决定将我的项目移动到不同的文件夹中。我没有复制node-modules文件夹。
当我运行npm install时,它什么都没说,什么都没安装。显然,它查看了devDependencies部分,而不是之前使用过的依赖项。
如何从依赖项中安装所有npm?
我的package.json:
{
"name": "zzz",
"version": "0.0.0",
"private": true,
"scripts": {
"start": "node ./bin/www"
},
"dependencies": {
"body-parser": "~1.18.2",
"cookie-parser": "~1.4.3",
"debug": "~2.6.9",
"ejs": "~2.5.7",
"express": "~4.15.5",
"express-session": "^1.15.6",
"grunt": "^1.0.1",
"grunt-contrib-less": "^1.4.1",
"grunt-exec": "^3.0.0",
"grunt-link-html": "^0.1.2",
"moment": "^2.20.1",
"mongoose": "^5.0.0-rc1",
"morgan": "~1.9.0",
"passport": "^0.4.0",
"passport-local": "^1.0.0",
"serve-favicon": "~2.4.5"
}
}
如果我尝试单独安装软件包,它会创建并更新devDependencies部分,而不是预期的依赖项。
找到解决方案。事实证明,如果package.json中的“name”中有空格,NPM将按预期停止工作。一旦我将它们移除,NPM就开始工作了。太令人困惑了!
答案 0 :(得分:0)
你的json中有"serve-favicon": "~2.4.5"
附近的空格形式的拼写错误。更好地使用像VSCODE这样的IDE和像美化这样的扩展来避免不必要的错误。还要求依赖"grunt@~0.4.0"
。所以安装它并执行npm install
。