说,我们package.json
有一个脚本,应该在我们之前已经构建和打包的本地安装一些包:
{
"name": "test-local-npm-install",
"version": "0.0.0",
"scripts": {
"pack-package": "npm pack ./dist",
"install-package": "npm install my-package-0.0.0.tgz"
},
"dependencies": {
}
}
当我执行npm run install-package
时,正在正确安装软件包,我可以在./node_modules/my-package
中看到它。但是npm也会影响我的package.json
,它会将该包添加到dependencies
列表中:
{
"name": "test-local-npm-install",
"version": "0.0.0",
"scripts": {
"pack-package": "npm pack ./dist",
"install-package": "npm install my-package-0.0.0.tgz"
},
"dependencies": {
"my-package": "file:my-package-0.0.0.tgz"
}
}
我想知道为什么?没有--save
/ --save-dev
标志......如何防止这种行为?我需要将其安装在node_modules
中,但我不希望将其添加到package.json
。
答案 0 :(得分:1)
时间过得很快...自从npm 5发布(2017年)以来,默认行为已更改。每current documentation:
npm install 默认情况下将所有指定的包保存到依赖关系。
要解决此问题,需要使用--no-save
选项调用:
此外,您可以控制一些人保存的地点和方式 额外的旗帜:
...... - no-save :防止保存为依赖项。