创建 Package.json
您可以将package.json文件添加到软件包中,以使其他人可以轻松管理和安装。发布到注册表的程序包必须包含一个package.json文件。
一个package.json文件:
列出您的项目所依赖的软件包
使用语义版本控制规则指定项目可以使用的软件包的版本
使您的构建具有可复制性,因此更易于与其他开发人员共享
注意:为了使您的软件包更易于在npm网站上找到,我们建议description在package.json文件中包含一个自定义文件。
package.json字段
必填名称和版本字段
一个package.json文件必须包含"name"和"version"领域。
该"name"字段包含您的软件包的名称,并且必须为小写字母和一个单词,并且可以包含连字符和下划线。
该"version"字段的格式必须x.x.x符合语义版本控制准则。
作者字段
如果要在"author"字段中包含程序包作者信息,请使用以下格式(电子邮件和网站都是可选的):
Your Name <email@f2er.com> (https://f2er.com)
例子
{ "name": "my-awesome-package", "version": "1.0.0" }
创建一个新的package.json文件
您可以package.json通过运行CLI调查表或创建默认package.json文件来创建文件。
运行CLI调查表
要使用package.json提供的值创建文件,请使用npm init命令。
-
在命令行上,导航到包的根目录。
cd /path/to/package
-
运行以下命令:
npm init
回答命令行调查表中的问题。
自定义package.json调查表
如果希望创建许多package.json文件,则可以自定义在此init过程中提出的问题和创建的字段,以便所有package.json文件都包含一组标准信息。
在您的主目录中,创建一个名为的文件.npm-init.js。
-
要添加自定义问题,请使用文本编辑器通过以下prompt功能添加问题:
module.exports = prompt("what's your favorite flavor of ice cream, buddy?", "I LIKE THEM ALL");
-
要添加自定义字段,请使用文本编辑器将所需的字段添加到.npm-init.js文件中:
module.exports = { customField: 'Example custom field', otherCustomField: 'This example field is really cool' }
要了解有关创建高级npm init定制的更多信息,请参见init-package-json GitHub存储库。
创建一个默认的package.json文件
要package.json使用从当前目录提取的信息创建默认值,请使用npm init带有--yes 或-y标志的命令。
-
在命令行上,导航到包的根目录。
cd /path/to/package
-
运行以下命令:
npm init --yes
例子
> npm init --yes Wrote to /home/ag_dubs/my_package/package.json: { "name": "my_package", "description": "", "version": "1.0.0", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "repository": { "type": "git", "url": "https://github.com/ashleygwilliams/my_package.git" }, "keywords": [], "author": "", "license": "ISC", "bugs": { "url": "https://github.com/ashleygwilliams/my_package/issues" }, "homepage": "https://github.com/ashleygwilliams/my_package" }
从当前目录中提取的默认值
name:当前目录名称
version:总是 1.0.0
description:自述文件中的信息,或者为空字符串 ""
main:总是 index.js
scripts:默认情况下会创建一个空test脚本
keywords:空
author:空
license: ISC
bugs:来自当前目录的信息(如果存在)
homepage:来自当前目录的信息(如果存在)
设置的配置选项init命令
您可以为init命令设置默认配置选项。例如,要在命令行上设置默认的作者电子邮件,作者名称和许可证,请运行以下命令:
> npm set init.author.email "example-user@f2er.com" > npm set init.author.name "example_user" > npm set init.license "MIT"