package.json ABC

package.json是nodejs开发时候会经常使用到的配置文件,即使不使用Node进行开发,在使用grunt(依赖node和npm)进行自动化构建的时候也会使用到package.json。希望通过这篇文章简单梳理一下package.json的基本要点。

官方文档:https://docs.npmjs.com/files/package.json

1.文件格式:JSON

    package.json必须满足严格的JSON语法。

2.简单的示例

    {

        "name":"testABCApp",

        "version":"0.0.1"

    }

    name和version是最重要的两个字段。

3.字段解析

    name:程序名称,必须小于等于214个字符,不能以.和_开头,不能以js或者node作为名称。

    version:版本号,常用格式:1.0.0,满足node-semver

    description:描述

    keywords:关键字,Array

    homepage:主页

    bugs:报告bug信息,示例:{"url":"issues in github here","email":"email here"}

    license:示例:{ "license" : "BSD-3-Clause" }

    dependencies:定义依赖关系,参考下一节内容。

    devDependencies:开发依赖关系,不跑测试与文档的脚本。

    scripts:脚本,根据事件定义要出发的脚本,事件定义在npm-scripts中,可以在特定中执行自定义的脚本。

4.深入理解dependencies

    dependencies依赖关系通过一张map来实现,key是包的名字,value是版本号信息。

    其中版本号信息的定义如下

    version:必须是该版本

    >version:大于此版本

    >=,<=,< 大于等于,小于等于,小于此版本

    ~version:子版本兼容,例如1.2.3是1.2.3-1.3.0(不含)之间,1.2等于1.2.x,1等于1.x。

    ^version:主版本兼容,例如1.2.3是1.2.3-2.0.0(不含)之间,0.2.3表示0.2.3-0.3.0之间。

    1.2.x:1.2.0,1.2.1等等

    *:所有版本

    version1-version2:>=version1 && <=version2

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,185评论 19 139
  • 原文链接:http://www.mujiang.info/translation/npmjs/files/pack...
    R_X阅读 1,050评论 0 1
  • 背景: 阅读新闻 12C CDB模式下RMAN备份与恢复 [日期:2016-11-29] 来源:Linux社区 作...
    阳屯okyepd阅读 3,642评论 0 7
  • 什么是 NPM npm之于Node,就像pip之于Python,gem之于Ruby,composer之于PHP。 ...
    ihoey阅读 6,283评论 2 36
  • 文|萌 一个人一天做的很多事情都不是由大脑决定的,而是由一个又一个的习惯组成的。比如早上起床第一件事情是干什么,出...
    萌爱佑佑阅读 220评论 0 4