package.json和package-lock.json到底是什么?

npm官方文档:
http://caibaojian.com/npm/files/package.json.html

我们每次,去npm install xxx会把内容记录到package.json文件中,下载的包都会发生变化,为了系统的稳定性考虑,每次执行完npm install之后会对应生成package-lock文件,该文件记录了上一次安装的具体的版本号。

根据官方文档,package-lock.json 是生成的系统当前安装的库的具体来源和版本号,锁定版本。

当你执行npm install的时候, node会先从package.json文件中读取所有dependencies信息,然后根据dependencies中的信息与node_modules中的模块进行对比,没有的直接下载,node是从package.json文件读取模块名称,从package-lock.json文件中获取版本号,然后进行下载或者更新。

当package.json与package-lock.json都不存在,执行"npm install"时,node会重新生成package-lock.json文件,然后把node_modules中的模块信息全部记入package-lock.json文件,但不会生成package.json文件。但是,你可以通过"npm init --yes"来生成package.json文件

posted @ 2020-02-29 12:29  ZJTL  阅读(541)  评论(0编辑  收藏  举报