携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第13天,点击查看活动详情
package.json
{
"name": "calamus-cli", // cli包名称,注意如果需要发布到npm不能重复
"version": "0.1.0", // 包版本,注意如果需要发布到npm版本不能重复
"description": "", // 项目描述
"main": "index.js", // 项目入口文件
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"calamus": "calamus-cli"
},
"bin": {
"calamus-cli": "./bin/calamus" // 执行命令别名
},
"publishConfig": {
"access": "public"
},
"keywords": [], // 关键字
"author": "calamus", // 作者
"license": "ISC", // 协议
"dependencies": { // 其他依赖
"boxen": "^4.1.0",
"chalk": "^3.0.0",
"esm": "^3.2.25",
"execa": "^3.3.0",
"inquirer": "^7.0.0",
"listr": "^0.14.3",
"log-symbols": "^3.0.0",
"ora": "^4.0.3",
"update-notifier": "^3.0.1"
},
"devDependencies": {
"commander": "^4.0.1",
"download-git-repo": "^3.0.2",
"fs": "0.0.1-security",
"glob": "^7.1.6",
"path": "^0.12.7",
"rimraf": "^3.0.0",
"tildify": "^2.0.0",
"user-home": "^2.0.0"
},
"files": [ // 发布时包含的文件夹目录,不在改配置里的发布包后不会有
"bin",
"lib",
"src",
"utils",
"package.json",
"readme.md"
],
}
其他常用属性
- version
此属性遵循版本的语义版本控制记法,这意味着版本始终以 3 个数字表示:
x.x.x
。
第一个数字是主版本号,第二个数字是次版本号,第三个数字是补丁版本号。
这些数字中的含义是:仅修复缺陷的版本是补丁版本,引入向后兼容的更改的版本是次版本,具有重大更改的是主版本。
- homepage 主页
"homepage": "https://github.com/owner/project#readme"
- private 如果设置了private,则无法推送到npm
"private": true
-
publishConfig 推送的一些设置
-
author 字符串标识作者名称,也可以写成对象的形式
"author": {
"name": "NodeJS中文网",
"email": "mail@nodejs.cn",
"url": "http://nodejs.cn"
}
- contributors 除作者外,该项目可以有一个或多个贡献者。 此属性是列出他们的数组。
{
"contributors": ["NodeJS中文网 <mail@nodejs.cn> (http://nodejs.cn))"]
}
同author一样,也可以使用以下格式:
{
"contributors": [
{
"name": "NodeJS中文网",
"email": "mail@nodejs.cn",
"url": "http://nodejs.cn"
}
]
}
- bugs 链接到软件包的问题跟踪器,最常用的是 GitHub 的 issues 页面。
{
"bugs": "https://github.com/nodejscn/node-api-cn/issues"
}
- keywords 包含与软件包功能相关的关键字数组。
"keywords": [
"email",
"machine learning",
"ai"
]