简介
在Node.js
中,package.json
是管理其依赖的配置文件。定义了项目所需的各种模块,以及项目的配置信息(如:项目名称、版本、作者信息、许可证等)。package.json
文件其实就是一个JSON 对象,其位于项目的根目录下。
npm install
命令会根据这个配置文件自动下载所需的模块。
配置说明
属性 | 说明 |
---|---|
name |
项目名称。长度不能大于214个字符,不能以. 或_ 开头,不能包含大写字母 |
version |
项目版本 |
author |
项目开发者。必须为 https://npmjs.org 中有效账户名,遵从 账户名<邮箱> 规则 |
description |
项目描述 |
keywords |
项目关键字 |
private |
是否私有。为true时拒绝发布 |
license |
软件许可证 |
bugs |
bug提交地址 |
contributors |
项目共享者 |
repository |
项目参考地址 |
homepage |
项目官网地址 |
dependencies |
生产环境下,项目运行所依赖的包 |
devDepandencies |
开发环境下,项目运行所依赖的包 |
scripts |
npm 执行命令 |
bin |
内部命令对应的可执行文件的路径 |
main |
项目默认执行文件 |
module |
ES6模块化方式加载 |
eslintConfig |
Eslint检查配置 |
engines |
项目运行平台 |
browserlist |
供浏览器使用的版本列表 |
style |
供浏览器使用时,样式文件所在的位置 |
files |
被项目包含的文件名 |
man |
指定 man 文档位置 |
扩展
package-lock.json
package-lock.json
用于锁定模块的版本。(包括主模块和所有依赖的子模块)
执行npm init
命令时,在项目根目录下会自动生成package.json
和package-lock.json
文件
dependencies 中版本
Node.js
中,包的版本号以点分十进制形成,一般模式版本由三部分组成。
- 第一部分:大版本
- 第二部分:功能版本
- 第三部分:Bug修复版本
dependencies
中定义了版本的限定,主要由:
- 指定版本
- ~ + 指定版本 仅能安装当前的bug修复版本。 如:
~1.1.3
,表示只能安装1.1.x 的最新版本(不低于1.1.3) - ^ + 指定版本 仅能安装当前大版本的新功能和bug修复版本。 如:
^1.1.3
,表示只能安装1.x.x 的最新版本(不低于1.1.3) - latest 最新版本