从零开始开发自己的脚手架工具cli系列:npm 包发布

129 阅读1分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第30天,点击查看活动详情

发布步骤

  1. 注册用户,注意用户格式 注册地址:www.npmjs.com
npm addUser // 注册用户,注意用户格式

  1. 配置好package.json 初始化 npm 配置,也就是生成package.json,生成后需要修改的内容可以再手动修改
npm init // 初始化 npm 配置

注册成功后,配置好package.json,主要设置需要发布的文件包信息等。 package.json示例

{
  "name": "calamus-cli",
  "version": "0.1.0",
  "description": "",
  "main": "index.js", // 入口文件
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "calamus": "calamus-cli"
  },
  "bin": {
    "calamus-cli": "./bin/calamus"
  },
  "publishConfig": {
    "access": "public"
  },
  "files": [ // 需要发布的包含文件包,建议包含dist打包后代码,src源码,docs文档
    "bin",
    "lib",
    "src",
    "utils",
    "package.json",
    "readme.md"
  ],
  "keywords": [],
  "author": "",
  "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",
    "archiver": "^5.3.1",
    "calamus-cli": "^0.1.0",
    "commander": "^9.2.0",
    "cos-nodejs-sdk-v5": "^2.11.9",
    "dotenv": "^16.0.1",
    "fs": "0.0.1-security",
    "fs-extra": "^10.1.0",
    "html-minifier": "^4.0.0",
    "inquirer": "^8.2.4",
    "path": "^0.12.7",
    "rxjs": "^7.5.5",
    "uglify-es": "^3.3.9",
    "user-home": "^3.0.0"
  },
  "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"
  }
}

  1. npm publish 发布包
npm publish <package-spec> // 发布包
  1. npm version patch 更新版本
npm version patch // 更新版本

本地测试:

方法一:本地生成本,手动引入


npm pack

pack后会生成压缩包后,获取包路径地址手动导入在项目中引用

npm install 路径/文件-1.0.0.tgz

方法二:npm link

引入项目和当前包地址通过link建立链接,则会同时变动。

资料参考: