npm install 不应用 package-lock.json 中的内容?
Posted
技术标签:
【中文标题】npm install 不应用 package-lock.json 中的内容?【英文标题】:npm install doesn't apply what is in package-lock.json? 【发布时间】:2021-05-13 12:42:11 【问题描述】:我在 MacOS Catalina 上有 Node v10.22.0,npm 6.14.6。
我从一个包含 package-lock.json
的 git repo 开始,它指定了 @truffle
依赖项,没有 node_modules
文件夹,没有 package.json
。克隆 repo 后,我运行 npm install
来安装依赖项。 npm 文档说
如果包有包锁...,安装 依赖关系将由它驱动
令人惊讶的是它实际上安装了 8 个与我的项目无关的包:d
、es5-ext
、es6-iterator
、es6-symbol
、ext
、ext
、next-tick
、type
AND 它用一个包含对这 8 个包的依赖项的新包覆盖 package-lock.json
。
如果我覆盖 package-lock.json
并启动 npm install
,它会重做相同的技巧。
问题:
-
发生了什么?
如何使
npm install
正确填充node_modules
?
【问题讨论】:
另外请注意,npm 将在安装过程中将包“提升”到根目录,如果它们占主导地位并被多个依赖项使用。 【参考方案1】:使用npm ci
根据您的锁定文件安装依赖项。有关此命令的更多详细信息,请查看this answer,它可以回答您的问题。
【讨论】:
酷。非常感谢。我过于依赖npm install
文档。可能是在npm ci
引入之后,它没有更新。我的工作是创建一个package.json
,而不是依赖package-lock.json
,但我仍然不知道npm install
在哪里找到了安装这些奇怪的8个包并覆盖package-lock.json
的说明以上是关于npm install 不应用 package-lock.json 中的内容?的主要内容,如果未能解决你的问题,请参考以下文章
npm项目install 偶有报错导致不能启动应用 一般解决办法记录
AWS EB 部署节点应用程序:无法运行 npm install
npm项目install 偶有报错导致不能启动应用 一般解决办法记录
npm项目install 偶有报错导致不能启动应用 一般解决办法记录