📜  Node.js |包.json

📅  最后修改于: 2022-05-13 01:56:21.810000             🧑  作者: Mango

Node.js |包.json

package.json文件是 Node.js 系统的核心。它是任何 Node.js 项目的清单文件,包含项目的元数据。 package.json 文件是理解、学习和使用 Node.js 的重要部分。这是了解 Node.js 开发的第一步。

package.json 文件由什么组成?
package.json文件中的元数据信息可以分为以下几类:
1.识别元数据属性:它基本上由识别模块/项目的属性组成,例如项目名称、模块的当前版本、许可证、项目作者、项目描述等。
2. 功能元数据属性:顾名思义,它由项目/模块的功能值/属性组成,例如模块的入口/起点、项目中的依赖项、正在使用的脚本、Node 项目的存储库链接等。

创建一个 package.json 文件:
可以通过两种方式创建package.json文件:
1. 使用 npm init :运行此命令,系统希望用户填写上述所需的重要信息。它为用户提供用户可编辑的默认值。
句法:

npm init

2. 直接写入文件:可以将所有需要的信息直接写入文件,并可以包含在Node项目中。

示例:包含所需信息的演示package.json文件。

{
  "name": "GeeksForGeeks",
  "version": "1.0.0",
  "description": "GeeksForGeeks",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "start": "node start.js",
  },
  "engines": {
    "node": ">=7.6.0",
    "npm": ">=4.1.2"
  },
  "author": "GeeksForGeeks",
  "license": "ISC",
  "dependencies": {
    "body-parser": "^1.17.1",
    "express": "^4.15.2",
    "express-validator": "^3.1.2",
    "mongoose": "^4.8.7",
    "nodemon": "^1.14.12",
  },
  "devDependencies": {},
  "repository": {
    "type": "git",
    "url": "https://github.com/gfg/gfg.git" //sample git repo url
  },
  "bugs": {
    "url": "https://github.com/gfg/gfg/issues"
  },
  "homepage": "https://github.com/gfg/gfg#readme"
}

说明
名称:应用程序/项目的名称。
版本:应用程序的版本。版本应遵循语义版本控制规则。
描述:关于应用程序的描述、应用程序的目的、使用的技术,如 React、MongoDB 等。
main:这是应用程序的入口/起点。它指定应用程序启动时触发的应用程序的主文件。可以使用npm start 启动应用程序。
脚本:需要包含在应用程序中才能正常运行的脚本。
引擎:使用的节点npm的版本。如果应用程序部署在 heroku 或 google-cloud 等云上,则会指定这些版本。
关键字:它指定表征应用程序的字符串数组。
作者:它包括关于作者的信息,如姓名、电子邮件和其他与作者相关的信息。
license:此键值对中提到了应用程序确认的许可证。
依赖项:使用npm安装的第三方包或模块在此段中指定。
devDependencies:仅在应用程序的开发部分中使用的依赖项在此段中指定。当应用程序处于生产阶段时,这些依赖项不会推出。
存储库:它包含有关应用程序代码所在的存储库的类型和 url 的信息,这在本节中提到。
bugs:此部分中提到了应报告应用程序中的错误的 url 和电子邮件。

注意:这里, “body-parser”“express”“express-validator” 、“mongoose “nodemon”是使用npm(节点包管理器)安装的模块/包。

参考:
http://nodesource.com/blog/the-basics-of-package-json-in-node-js-and-npm/
https://dzone.com/articles/the-basics-of-packagejson-in-nodejs-and-npm