Tasking

  • 建立一个空文件夹
  • 初始化npm项目
  • 建立入口文件
  • 编写执行脚本
  • 添加执行命令
  • 发布cli到npm
  • 安装cli本地测试

    执行

    新建一个clin-cli文件夹:
    1. mkdir clin-cli
    初始化项目:
    1. npm init --yes
    ```json // package.json { “name”: “clin-cli”, “version”: “1.0.0”, “description”: “”, “main”: “index.js”, “scripts”: {
    1. "test": "echo \"Error: no test specified\" && exit 1"
    }, “keywords”: [], “author”: “”, “license”: “MIT” }
  1. <a name="0j9W6"></a>
  2. ##### 在当前项目中新建bin文件夹,再在bin文件夹中新建index.js:
  3. ```powershell
  4. mkdir bin
  5. cd bin
  6. touch index.js

编辑index.js脚本
  1. #!/usr/bin/env node
  2. console.log('welcome clin-cli')

添加执行命令
  1. {
  2. "name": "clin-cli",
  3. "version": "1.0.0",
  4. "description": "",
  5. "main": "index.js",
  6. "bin": {
  7. "clin-cli": "bin/index.js"
  8. },
  9. "scripts": {
  10. "test": "echo \"Error: no test specified\" && exit 1"
  11. },
  12. "keywords": [],
  13. "author": "changlin",
  14. "license": "MIT"
  15. }

登录npm(没有账号的话,可以先注册
  1. npm login

输入npm login后按照控制面板的提示输入用户名、密码、邮箱;检测是否登录成功,若登录成功,则会打印出当前用户的用户名,反之不会

  1. npm who am i

发布到npm官网
  1. npm publish

image.png

发布后可在npm官网中查看;发布过程中若遇到问题,可参考下一篇总结

发布成功后,安装到本地测试

注意:无论是全局安装还是项目局部安装,都要退出当前cli本地开发脚本的目录

  1. npm i clin-cli -g

image.png
全局安装后,在控制面板中输入命令:

  1. clina

image.png

删除全局安装的cli进行本地调试:

  • 删除clin-cli

    1. npm uninstall clin-cli -g
  • 建立本地软连接:npm link

    npm link: 将当前项目链接到node全局node_modules中作为一个库文件,并解析bin配置创建可执行文件

  1. npm link

image.png

  • 对bin/index.js修改之后在进行测试

image.png

  • 终端中输入clin-cli 查看结果

image.png

取消链接本地库文件:

  1. npm unlink // 将当前项目从node全局node_modules中移除