package.json 是 CommonJS 规定的用来描述包的文件,完全符合规范的 package.json 文件应该含有以下字段:
name:包的名称,必须是唯一的由小写英文字母、数字和下划线组成,不能包含空格
description:包的简要说明
version:符合语义化版本识别规范的版本字符串
keywords:关键字数组,通常用于搜索
maintainers:维护者数组,每个元素要包含 name、 email (可选)、 web (可选)字段
contributors:贡献者数组,格式与maintainers相同。包的作者应该是贡献者数组的第一个元素
bugs:提交bug的地址,可以是网址或者电子邮件地址
licenses:许可证数组,每个元素要包含 type (许可证的名称)和 url (链接到许可证文本的地址)字段
repositories:仓库托管地址数组,每个元素要包含 type(仓库的类型,如 git )、url (仓库的地址)和 path (相对于仓库的路径,可选)字段
dependencies:包的依赖,一个关联数组,由包名称和版本号组成
下面是一个完整 package.json 的示例:
/**
* 自定义选择器插件
*/
;
(function($) {
$.extend($.expr[':'], {
"between": function(a, i, m) {
var tmp = m[3].split(',');
return tmp[0]-0 < i && i < tmp[1] - 0;
}
});
})(jQuery);
// 插件应用
$(function() {
$('div:between(2, 5)').css('background', 'white');
});
{
"name" : "mypackage",
"description" : "Sample package for CommonJS. This package demonstrates the required
elements of a CommonJS package.",
"version" : "0.7.0",
"keywords" : [
"package",
"example"
],
"maintainers" : [{
"name" : "Bill Smith",
"email" : "bills@example.com",
}
],
"contributors" : [{
"name" : "BYVoid",
"web" : "http://www.byvoid.com/"
}
],
"bugs" : {
"mail" : "dev@example.com",
"web" : "http://www.example.com/bugs"
},
"licenses" : [{
"type" : "GPLv2",
"url" : "http://www.example.org/licenses/gpl.html"
}
],
"repositories" : [{
"type" : "git",
"url" : "http://github.com/BYVoid/mypackage.git"
}
],
"dependencies" : {
"webkit" : "1.2",
"ssl" : {
"gnutls" : ["1.0", "2.0"],
"openssl" : "0.9.8"
}
}
}