package.json 详解
来源:互联网 发布:服务器编程项目 编辑:程序博客网 时间:2024/05/16 18:34
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
文件描述了一个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会自动设置此值*/
0 0
- package.json详解
- package.json 详解
- package.json详解
- package.json文件详解
- package.json详解
- package.json详解
- nodejs package.json详解
- Package.json详解
- package.json 详解
- package.json 详解
- (译)package.json详解
- npm中package.json详解
- npm中package.json详解
- package.json文件配置详解
- npm package.json属性详解
- npm package.json属性详解
- npm package.json属性详解
- package.json for NPM 文件详解
- A+B Problem II
- mysql5.7错误代码
- Hadoop Installation - Pseudodistributed Mode
- exp 中query参数的使用
- 未排序数组中累加和为给定值的最长子数组系列问题
- package.json 详解
- springmvc下载文件以及下载大文件方法
- Android百分比布局:PercentFrameLayout
- 同步/异步,阻塞/非阻塞
- 安卓App注销登陆实现
- POJO和javabean的异同
- Android中Recyclerview使用9----Recyclerview的条目复用,出现CheckBox或者设置背景混乱问题
- npm 更新
- Android NDK编译选项设置