【问题标题】:Npm local dependency will generate a new package-lock.json with any installNpm 本地依赖将生成一个新的 package-lock.json 与任何安装
【发布时间】:2021-01-31 14:25:48
【问题描述】:

我们有一个旧的遗留应用程序,以及一个我们想要集成到其中的相对较小的包。为了尽可能减少整个过程的开销,我们决定通过从 repo 本身安装包来做到这一点。

例如,我们的结构是这样的:

- BigApp
  - SmallPackage
    - package.json
  - package.json

因此,BigApp package.json 具有以下依赖关系:

SmallPackage: "file:./SmallPackage"

现在一切正常,直到我们注意到每个npm install 都会创建一个新的package-lock.json。这是一个不需要的副作用,因为没有真正改变。

除了我们使用这个本地安装路径这一事实之外,我想不出其他原因。

有人能想出为什么会这样吗?

顺便说一句,我听说过npm ci - 它适合这种情况吗? 谢谢

【问题讨论】:

    标签: javascript npm dependencies npm-install


    【解决方案1】:

    package-lock.json 在最新版本的npm 中默认生成。这不是因为您是从本地路径或类似路径安装。

    如果您不想要 package-lock.json 文件的好处,可以运行 npm--no-package-lock 或将 package-lock=false 放入项目根目录中的 .npmrc 文件中。也可以删除package-lock.json,也可以忽略。

    npm ci 依赖于package-lock.jsonnpm-shrinkwrap.json,所以如果你想使用npm ci,你可能需要package-lock.json 文件。

    【讨论】:

      猜你喜欢
      • 2020-08-10
      • 2022-01-08
      • 2018-04-19
      • 2018-12-07
      • 2019-04-06
      • 2017-04-08
      • 2019-10-02
      • 2020-01-16
      • 2021-09-20
      相关资源
      最近更新 更多