目录
创建 package.json 文件
目录
您可以向您的包中添加一个 package.json
文件,以便其他人轻松管理和安装。发布到注册表的包必须包含 package.json
文件。
package.json
文件
- 列出您的项目依赖的包
- 使用 语义版本控制规则 指定您的项目可以使用包的版本
- 使您的构建可重复,从而更易于与其他开发者共享
注意:为了便于在 npm 网站上查找您的包,我们建议在您的 package.json
文件中包含自定义 description
。
package.json
字段
必需的 name
和 version
字段
package.json
文件必须包含 "name"
和 "version"
字段。
"name"
字段包含您的包的名称,必须是小写且只有一个单词,并且可以包含连字符和下划线。
"version"
字段必须采用 x.x.x
格式并遵循 语义版本控制准则。
作者字段
如果您想在 "author"
字段中包含包作者信息,请使用以下格式(电子邮件和网站都是可选的)
您的姓名 <[email protected]> (http://example.com)
示例
{"name": "my-awesome-package","version": "1.0.0",}
创建新的 package.json
文件
您可以通过运行 CLI 问卷调查或创建默认的 package.json
文件来创建 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("你最喜欢的冰淇淋口味是什么,朋友?", "我都很喜欢");
-
要添加自定义字段,请使用文本编辑器将所需字段添加到
.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
,请使用带有 --yes
或 -y
标志的 npm init
命令。有关默认值的列表,请参阅 "从当前目录中提取的默认值"。
-
在命令行中,导航到您的包的根目录。
cd /path/to/package
-
运行以下命令
npm init --yes
示例
> npm init --yesWrote to /home/monatheoctocat/my_package/package.json:{"name": "my_package","description": "","version": "1.0.0","scripts": {"test": "echo \"Error: no test specified\" && exit 1"},"repository": {"type": "git","url": "https://github.com/monatheoctocat/my_package.git"},"keywords": [],"author": "","license": "ISC","bugs": {"url": "https://github.com/monatheoctocat/my_package/issues"},"homepage": "https://github.com/monatheoctocat/my_package"}
从当前目录中提取的默认值
name
: 当前目录名称version
: 始终为1.0.0
description
: 来自 README 的信息,或空字符串""
scripts
: 默认情况下创建一个空的test
脚本keywords
: 空author
: 空license
:ISC
bugs
: 来自当前目录的信息(如果存在)homepage
: 来自当前目录的信息(如果存在)
为 init 命令设置配置选项
您可以为 init 命令设置默认配置选项。例如,要在命令行中设置默认作者电子邮件、作者姓名和许可证,请运行以下命令
> npm set init-author-name "example_user"> npm set init-license "MIT"