package-lock.json包含非精确版本

时间:2018-08-23 20:01:13

标签: npm npm-install package-lock.json

根据package-lock.json's documentation

  

它描述了生成的确切树,以便后续   安装能够生成相同的树,无论   中间依赖项更新。

我正在查看一个package-lock.json文件,其中包含以下版本:

"less": "^3.0.4",
"less-loader": "^4.1.0",
"license-webpack-plugin": "^1.3.1",
"lodash": "^4.17.4",
"memory-fs": "^0.4.1
依赖项之一的requires块中的

尽管主项目的子项依赖项没有版本歧义性而被“锁定”,但这些传递性依赖项却没有。但是,如果树中的任何依赖关系都需要解释,那么npm怎么能“生成相同的树,而不考虑中间依赖关系的更新”?

1 个答案:

答案 0 :(得分:0)

根据this thread,在npm @ 6中,package-lock.json在内部表示依赖项版本的方式有所变化,因为它记录了最初请求的范围依赖项,但仍锁定了特定版本。以前,程序包锁不记录依赖项最初请求的版本,而仅记录它在创建时将其解析为哪个版本。