package.json各个字段的意义
name
name。包名。规范定义它需要由小写的字母和数字组成,可以包含.、_和-,但是不允许出现空格。包名必须是唯一的,以免对外公布时产生重名冲突的误解。NPM建议不要在包名中附带node或者js来重复标
description
description。简介。用于对整个包做一个简单介绍
version
version。版本号。一个语义化的版本号,通常为major.minor.revison。该版本号十分重要,常用于一些版本控制场合
keywords
keywords。关键词数组,NPM中主要用来做分类搜索。一个好的关键词数组有利于用户快速找到你编写的包
maintainers
maintainers。 包维护者的列表。每个维护者有name、email和web这3个属性组成。NPM 会通过该属性进行权限认证。
contributors
contributors。贡献者列表。
bugs
bugs。一个可以反馈bug的网页地址或邮件地址
licenses
licenses。当前包所使用的许可证列表,表示这个包可以在哪些许可证下使用。他的格式如下:
“lecenses”:[{“type”:“GPLv2”,“url”:"}]
repositories
repositories。托管源代码的位置列表。表明可以通过那些方式和地址访问包的源码。
dependencies
dependencise 。使用当前包所需要依赖的包列表。这个属性十分重要,NPM会通过这个属性帮助自动
homepage
homepage。当前包的网站地址。
os
os。操作系统支持列表
cpu
cpu。CPU结构的支持列表。有效的架构名称有arm、mips、ppc、x86、x86_64
scripts
scripts。脚本说明对象。主要被包管理器用来安装、编译、测试和卸载包
author
author。包作者。
bin
bin。一些包作者希望包可以作为命令行工具使用。配置好bin 字段后,通过npm install package_name -g 命令可以将脚本添加到执行的路径中,之后可以在命令行中直接执行。通过-g命令安装的模块包成为全局模式。
main
main。模块引入方法require()在引入包时,会优先检查这个字段。并将其作为包中其余模块的入口。如果不存在这个字段,require()方法会查找包目录下的index.js、index.node、index.json文件作为默认入口
devDependencies
devdependencies。一些模块只在开发时需要依赖。配置这个属性,可以提示包的后续开发者安装依赖包
以上是package.json的大部分字段的含义