Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Npm local dependency将在任何安装中生成一个新的包-lock.json_Javascript_Npm_Dependencies_Npm Install - Fatal编程技术网

Javascript Npm local dependency将在任何安装中生成一个新的包-lock.json

Javascript Npm local dependency将在任何安装中生成一个新的包-lock.json,javascript,npm,dependencies,npm-install,Javascript,Npm,Dependencies,Npm Install,我们有一个旧的遗留应用程序,和一个相对较小的软件包,我们想集成在其中。为了尽可能减少整个过程的开销,我们决定通过从repo本身安装包来实现这一点 例如,我们的结构如下所示: - BigApp - SmallPackage - package.json - package.json 因此,BigApppackage.json具有以下依赖性: SmallPackage:“文件:./SmallPackage” 现在一切都很好,直到我们注意到每次npm安装时都会创建一个新的packag

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

例如,我们的结构如下所示:

- BigApp
  - SmallPackage
    - package.json
  - package.json
因此,
BigApp
package.json具有以下依赖性:

SmallPackage:“文件:./SmallPackage”

现在一切都很好,直到我们注意到每次
npm安装时都会创建一个新的
package lock.json
。这是一个不必要的副作用,因为没有什么真正改变

我想不出另一个原因,但我们使用了这个本地安装路径

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

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

包锁。在最新版本的
npm
中,默认情况下会生成json
。这不是因为您是从本地路径或类似路径安装的

如果您不想享受
包锁.json
文件的好处,可以使用
--无包锁运行
npm
,或者将
包锁=false
放在项目根目录下的
.npmrc
文件中。您还可以删除
包锁.json
,也可以忽略它

npm ci
依赖于
package lock.json
npm shrinkwrap.json
,因此如果要使用
npm ci
,可能需要
package lock.json
文件