package-lock.json

描述

对于npm修改node_modules树或package.json的任何操作,都会自动生成package.json,它描述生成的确切树,以便后续安装能够生成相同的树,而不管中间依赖项更新如何

此文件拟提交至来源资料库,并可作以下用途:

  • 描述依赖关系树的单一表示形式,以确保队友、部署和持续集成能够安装完全相同的依赖关系。
  • 为用户提供一种工具,让他们可以“穿越”到node_modules以前的状态,而不必提交目录本身。
  • 通过可读的源代码控制差异,提高树更改的可视性。
  • 并通过允许npm跳过先前安装包的重复元数据解析来优化安装过程。

关于package-lock.json的一个关键细节是它是不能发布的,如果在除toplevel包之外的任何地方发现它,它将被忽略。它与npm-shrinkwrap.json共享一种格式,本质上是相同的文件,但允许发布。除非部署CLI工具或使用发布过程来生成生产包,否则不建议这样做。

如果package-lock.json和npm-shrinkwrap.json存在于包的根目录中,package-lock.json将完全被忽略。

文件格式

name(名字)

package-lock.json中包的名字必须匹配package.json中的内容。

version(版本)

package-lock.json中包的名字必须匹配package.json中的内容。

lockfileVersion

整数版本,从1开始,该文档的版本号为1,在生成这个package-lock.json时使用了该文档的语义。

packageIntegrity

这是从package.json中创建的子资源完整性值。不应该对package.json进行预处理。子资源完整性字符串可以由ssri之类的模块生成。

preserveSymlinks

指示安装完成时启用了环境变量NODE_PRESERVE_SYMLINKS。安装程序应该坚持此属性的值与环境变量匹配。

dependencies(依赖关系)

包名到依赖项对象的映射。依赖对象具有以下属性:

  • version:版本
  • integrity:这是该资源的标准子资源完整性

  • resolved:来源

  • bundled

  • dev

  • optional

  • requires:依赖包

npm学习(十一)之package-lock.json的更多相关文章

  1. 解决npm ERR!Unexpected end of JSON input while paring near (解析附近时JSON输入意外结束)'...."^2.0.0-rc.0","glob"'等npm install错误

    摘要 最近更新了一次node,但是更新后npm的命令总是会报 npm WARN deprecated fsevents@2.0.6: Please update: there are crash fi ...

  2. Node.js学习笔记(三) --- package.json 及cnpm

    一.包 Nodejs   中除了它自己提供的核心模块外,我们可以自定义模块,也可以使用第三方的模块.Nodejs 中第三方模块由包组成,可以通过包来对一组具有相互依赖关系的模块进行统一管理. 完全符合 ...

  3. 十二、Nodejs 包与 NPM 第三方模块安装 package.json 以及 CNPM

    1. 包 Nodejs 中除了它自己提供的核心模块外,我们可以自定义模块,也可以使用第三方的模块.Nodejs 中第三方模块由包组成,可以通过包来对一组具有相互依赖关系的模块进行统一管理. 在 Nod ...

  4. npm 学习笔记

    一.介绍 1.是什么 npm 全称是 Node Package Manager,即 Node 包管理工具. 但是发展到后来,并不仅是适用于 node.js 的包. 所以现在看 node_modules ...

  5. NPM 学习笔记整理

    NPM 学习笔记整理 阅读 550,2017年06月04日 发布,来源:blog.ihoey.com 什么是 NPM npm 之于 Node ,就像 pip 之于 Python , gem 之于 Ru ...

  6. npm学习(六)之如何创建 Node.js 模块

    如何创建 Node.js 模块 Node.js 模块是一种可以发布到 npm 的包.当你创建一个新模块时,创建 package.json 文件是第一步. 你可以使用 npm init 命令创建 pac ...

  7. Node Newbie Error – NPM Refusing to Install Package as a Dependency of Itself

    46 error argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_ ...

  8. npm学习(四)之如何安装全局包、更新全局安装的包、卸载全局安装的包

    如何安装全局包 有两种方式用来安装 npm 包:本地安装和全局安装.选用哪种方式来安装,取决于你如何使用这个包. 如果你想将其作为一个命令行工具,那么你应该将其安装到全局.这种安装方式后可以让你在任何 ...

  9. 【转载】 强化学习(十一) Prioritized Replay DQN

    原文地址: https://www.cnblogs.com/pinard/p/9797695.html ------------------------------------------------ ...

  10. Spring MVC 学习笔记11 —— 后端返回json格式数据

    Spring MVC 学习笔记11 -- 后端返回json格式数据 我们常常听说json数据,首先,什么是json数据,总结起来,有以下几点: 1. JSON的全称是"JavaScript ...

随机推荐

  1. [CSP-S模拟测试]:小Y的图(最小生成树+LCA)

    题目传送门(内部题131) 输入格式 第一行三个整数$n$.$m$和$Q$. 接下来$m$行每行三个整数$x$.$y$.$z$($1\leqslant x,y\leqslant n,1\leqslan ...

  2. shiro的Quickstart

    /** * Simple Quickstart application showing how to use Shiro's API. * * @since 0.9 RC2 */ public cla ...

  3. LeetCode82----删除排序链表中的重复元素 II

    给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字. 示例 1: 输入: 1->2->3->3->4->4->5 输出: 1-&g ...

  4. halcon

    读图write_imageread_image *图片路径 FilePath:='d:/pic/demo.jpg' *判断文件是否存在 file_exists ('/bin/cc', FileExis ...

  5. linux 中文乱码解决办法

    就是从数据库中取出来时,在存入linux的文件里时,在字符流时制定编码格式.代码如下: FileOutputStream fos=new FileOutputStream(new File(fileP ...

  6. Dubbo HA 高可用

    一.zookeeper 宕机 现象:zookeeper 注册中心宕机,还可以消费 dubbo 暴露的服务 健壮性  监控中心宕掉不影响使用,只是丢失部分采样数据  数据库宕掉后,注册中心仍能通过缓 ...

  7. 一、基础篇--1.1Java基础-Session和Cookie的区别【转】

    https://www.cnblogs.com/zlw-xf/p/8001383.html 1:cookie数据存放在客户的浏览器上(客户端),session数据放 @1:cookie不是很安全,别人 ...

  8. oracle delete 数据恢复

    /*1.FLASHBACK QUERY*/ --闪回到15分钟前 select *  from orders  as of timestamp (systimestamp - interval ''1 ...

  9. python源码

    初学者 GitHub - kennethreitz/pip-pop: Tools for managing requirements files. GitHub - kennethreitz/envo ...

  10. golang tcp keepalive实践

    前文中已经介绍了TCP keep alive的做了详尽说明,本文结合golang,介绍如何使用TCP keep alive. 目前golang net包不提供TCP keep alive 空闲多长时间 ...