package.json-nodeJs
package.json文件描述了一个NPM包的所有相关信息,包括作者、简介、包依赖、构建等信息。格式必须是严格的JSON格式。
通常我们在创建一个NPM程序时,可以使用npm init命令,通过交互式的命令,自动生成一个package.json文件,里面包含了常用的一些字段信息,但远不止这么简单。通过完善package.json文件,我们可以让npm命令更好地为我们服务。
如果你有个新的项目,还没有下载过任何的npm包,而需要的npm包跟前一个项目差不多。那么,你可以把这个项目里面的package.jn拷贝到当前项目根目录。然后npm install,所有的依赖包就会自动的下载完毕了!
{
//必须,标识;不能包含node,js等字段;将会是url的一部分
//命令行的参数,目录名。所以不能移点号和下划线开头
"name": "webpack-react",
//name和version组成的标识是唯一的,改变包的时候应该同时改变version
"version": "1.0.0",
//简介,方便npm search中查找
"description": "",
//程序入口模块的id,调用此包时,返回的是该模块(index)的导出(export)
"main": "server.js",
/* *repository: 代码存放地址 可选字段 */
"repository": "git://github.com/panqianjin/hello.git",
//同description 可选字段
"keywords": [ "test", "cortex" ],
//普通licesnse可直接使用 你应该要指定一个许可证,让人知道使用的权利和限制的。
// 如果你有更复杂的许可条件,或者想要提供给更多地细节,可以这样:
/* "licenses" : [
{ "type" : "MyLicense"
, "url" : "http://github.com/owner/project/path/to/license"
}
]
*/
"license": "MIT",
//当前包所依赖的其他包。即生产环境
"dependencies": {
"babel-preset-react": "^6.5.0",
"react": "^0.14.7",
"react-dom": "^0.14.7",
"webpack": "^1.12.15"
},
// 外部测试或文档框架。即测试环境依赖
// 如果只需要下载使用某些模块,而不下载这些模块的测试和文档框架,
// 放在这个下面比较不错
"devDependencies": {
"babel-core": "^6.7.2",
"babel-loader": "^6.2.4",
"babel-preset-es2015": "^6.6.0",
"babel-preset-stage-1": "^6.5.0",
"css-loader": "^0.23.1",
"file-loader": "^0.8.5",
"html-webpack-plugin": "^2.14.0",
"less-loader": "^2.2.3",
"react-hot-loader": "^1.3.0",
"style-loader": "^0.13.0",
"webpack-dev-server": "^1.14.1"
},
//engines: 既可以指定node版本也可以指定npm版本
"engines": {
"node": ">=0.10.0"
},
// *script 由脚本命令组成的hash对象在包不同生命周期运行 *
// key 时生命周期事件,value时要运行的命令
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start_html":"webpack --config webpack.html.config.js",
"start_es6":"webpack --config webpack.es6.config.js",
"start_react":"webpack --config webpack.react.config.js",
"start_todo":"webpack --config webpack.todo.config.js",
"build":"webpack-dev-server --port 3000 --hot --inline",
"build_es6":"webpack-dev-server --port 4000 --hot --inline --config webpack.es6.config.js",
"build_todo":"webpack-dev-server --port 4000 --hot --inline --config webpack.todo.config.js"
},
/* *homepage:项目官网 可选字段*/
"homepage": "http://github.com/panqianjin/hello"
"author": {
"name": "qianjin.pan",
"email": "qinajin.pan@dianping.com"
},
//问题追踪系统的url或者邮箱 可选字段
"bugs": {
"url": "http://github.com/panqianjin/hello/issues"
},
// 指定你的包可以在哪些系统平台下运行
"os": [ "darwin", "linux", "!win32" ],
// 可以指定包运行的cpu架构
"cpu": [ "x64", "!arm" ]
}
/*
"scripts": { "start": "node server.js" } 如果在项目根目录下含有server.js
文件,则NPM会自动设置此值。
"scripts": { "preinstall": "node-gyp rebuild" }
如果在项目根目录下含有binding.gyp文件,则NPM会自动设置此值
*/
package.json-nodeJs的更多相关文章
- NodeJS中 package.json各属性分析
package.json 中包含各种所需模块以及项目的配置信息(名称.版本.许可证等)meta 信息. Name:它属于必须字段,在package.json中最重要的就是name和version字段, ...
- NodeJS中 package.json 解析
package.json 中包含各种所需模块以及项目的配置信息(名称.版本.许可证等)meta 信息. 包含可配置项 name 名称 应用描述 description 版本号 version 应用的配 ...
- NodeJS package.json
#3 NodeJS package.json 工作目录 package.json 导航至工作目录后,执行下图中的命令
- nodejs package.json详细解读
package.json详细内容 它是这样一个json文件(注意:json文件内是不能写注释的,复制下列内容请删除注释): JavaScript { "name": "t ...
- nodejs的package.json依赖dependencies中 ^ 和 ~ 的区别
nodejs的package.json定义了一个模块,包括其依赖关系的一个简单的JSON文件,该文件可以包含多个不同的指令来告诉Node包管理器如何处理模块. dependencies则表示此模块依赖 ...
- [转]nodejs中package.json和package-lock.json文件的功能分析
本文转自:https://blog.csdn.net/u013992330/article/details/81110018 最新版nodejs中,多了一个package-lock.json文件,刚开 ...
- 如何编写package.json配置NodeJS项目的模块声明
在NodeJS项目中,用package.json文件来声明项目中使用的模块,这样在新的环境部署时,只要在package.json文件所在的目录执行 npm install 命令即可安装所需要的模块. ...
- nodejs的package.json
package.json文件会描述这个NPM包的所有相关信息,包括作者.简介.包依赖.构建等信息,格式是严格的JSON格式 在E:/nodejs/mychat下 执行,npm init 输入yes,就 ...
- npm安装socket.io时报错的解决方法(npm WARN enoent ENOENT: no such file or directory, open '/usr/local/nodejs/bin/package.json')
执行 npm install socket.io安装时报错: [root@WEB node_modules]# npm install socket.ionpm WARN enoent ENOENT: ...
- nodeJs 安装 npm nodeModules package.json
Nodejs 1.安装nodejs 从nodejs官网下载最新版本的node,设置环境变量这样就可以在cmd下直接用命令行操作npm 环境变量:path d:/nodejs 查看本机node及n ...
随机推荐
- DevExpress皮肤样式
[时间] 2016-02-15 11:41:11 天气晴 没有雾霾难得的好天气!!! [工具] (1)Visual Studio 2015 (2)DevExpress15.2.3 [感言] 一直以来都 ...
- 30-seconds-of-css
你可以再30秒或者更短的时间内读懂的有用的CSS代码片段的精选. github地址 不过代码不在github上面 官网地址 上面有详细的介绍和演示 下面是我读到的一些个人认为比较实用的片段 1. 等宽 ...
- 适配器模式adepter
1. 主要优点 无论是对象适配器模式还是类适配器模式都具有如下优点: (1) 将目标类和适配者类解耦,通过引入一个适配器类来重用现有的适配者类,无须修改原有结构.(适配者得结构 (2) 增加了类的透明 ...
- 配置B类内网 和 配置A类内网
首先 A 类网 对应的 子网掩码是255.0.0.0 B 类网 对应的 子网掩码是255.255.0.0 C 类网 对应的 子网掩码是255.255.255.0 一般来说 10 开头的都是 A 类网 ...
- MySQL通过Navicat实现远程连接
直接使用Navicat通过IP连接会报各种错误,例如:Error 1130: Host '192.168.1.80' is not allowed to connect to this MySQL s ...
- 基于CRF序列标注的中文依存句法分析器的Java实现
这是一个基于CRF的中文依存句法分析器,内部CRF模型的特征函数采用 双数组Trie树(DoubleArrayTrie)储存,解码采用特化的维特比后向算法.相较于<最大熵依存句法分析器的实现&g ...
- Qt 中的事件处理(二)
1. 回顾事件传递的过程 ①源头:操作系统 操作系统检测到用户的动作时,就会产生一个系统消息,系统消息就会被发送到正在运行的Qt应用程序中, ②应用程序收到系统消息后, 他会将系统消息翻译成对应的 ...
- Mysql索引分类和索引优化
一. MySQL: 索引以B树格式保存 Memory存储引擎可以选择Hash或BTree索引,Hash索引只能用于=或<=>的等式比较. 1.普通索引:create index on Ta ...
- shell脚本报错:-bash: xxx: /bin/sh^M: bad interpreter: No such file or directory --引用自http://blog.csdn.net/xiaaiwu/article/details/49126777
windows下编辑然后上传到linux系统里执行的..sh文件的格式为dos格式.而linux只能执行格式为unix格式的脚本. 我们可以通过vi编辑器来查看文件的format格式.步骤如下: 1. ...
- delphi内存映射 与 映射数据获取
一.原理 通过使用“内存映射文件”,实现内存共享 二.主要操作 共享内存结构: PShareMem = ^TShareMem; TShareMem = Record id:stri ...