在将NPM更新到最新版本(从3.X到5.2.0)并在现有项目上运行npm install之后,我得到了一个自动创建的package-lock.json文件。
我可以告诉package-lock.json给出了一个精确的依赖树,而不是package.json。
从这些信息来看,package.json似乎是多余的,不再需要了。
对于国家预防机制来说,这两者都是必要的吗?
只使用package-lock.json文件是安全的还是可能的?
package上的docs -lock.json (doc1,doc2)没有提到这一点。
编辑
经过更多的思考,我得出的结论是,如果有人想在NPM的旧版本(5.x之前)中使用您的项目,它仍然会安装所有的依赖项,但是使用的版本不太准确(补丁版本)。
发布于 2018-12-02 08:32:04
你需要package-lock.json和package.json吗?不需要。
你需要package.json吗?是。
你能有一个只有package-lock.json的项目吗?No。
package.json不仅仅用于依赖项--比如定义项目属性、描述、作者和许可信息、脚本等等。package-lock.json仅用于锁定特定版本号的依赖项。
发布于 2019-06-20 09:42:09
package-lock.json:记录每个已安装软件包的确切版本,以便您重新安装它们。未来的安装将能够构建相同的依赖树。
package.json:记录应用程序所需的最低版本。如果您更新了特定包的版本,则不会在这里反映更改。
发布于 2021-06-26 17:27:21
Package.json vs Package.lock.json


https://stackoverflow.com/questions/45052520
复制相似问题