nodejs学习笔记package.json

在前面例子中的 somepackage 文件夹下,我们创建一个叫做 package.json 的文件,内容如
下所示:
{
"main" : "./lib/interface.js"
}
然后将 index.js 重命名为 interface.js 并放入 lib 子文件夹下。以同样的方式再次调用这个
包,依然可以正常使用。
Node.js 在调用某个包时,会首先检查包中 package.json 文件的 main 字段,将其作为
包的接口模块,如果 package.json 或 main 字段不存在,会尝试寻找 index.js 或 index.node 作
为包的接口。
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:包的依赖,一个关联数组,由包名称和版本号组成。

下面是一个完全符合 CommonJS 规范的 package.json 示例:

{
    "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"
        }
    }
}

 

posted @ 2013-09-08 12:59  xiaokaike  阅读(790)  评论(0编辑  收藏  举报