如何发布一个 npm 包 - 创建,发布,更新,撤销及常见问题解决
一,前言
二,流程介绍(共9个步骤)
这里以向npm官网发布一个npm包为例,进行演示说明(公司内部的私有 npm 包可能会发布到npm私服)
流程如下:
三,1,注册npm账户
四,2,验证邮箱
五,3,npm init初始化工程
新建工程目录,初始化npm工程:
按照提示配置package.json:
注意事项:
简单写一些代码逻辑用于测试-hello:
index.js
六,4,登录npm账户
代码写好了还不能发布,需要先登录npm:由于和谐原因,大部分开发者npm配置指向淘宝镜像所以,需要先切换回官方npm镜像,再进行登录:
切换完成后,登录npm:
1)首次登录:npm adduser
2)非首次登录:npm login
查看当前登录:npm whoami
七,5,发布npm包
创建npm工程,编写代码逻辑,切换镜像地址,登录npm后,可以发布了
发布命令:npm publish
注意:
发布时可能会遇到一些问题导致发布失败,如:
如何忽略不想上传的部分文件:
八,6,查看并测试npm包
发布成功后,登录npm并搜索刚发布的npm包,可以看到记录:
下载并测试发布的npm包:
引入:
输出:
九,7,更新npm包版本
npm社区版本号规则采用semver(语义化版本)
查看当前包版本号-npm version:
更新版本号并发布:
1)直接更新版本号 : npm version 新版本号
2)可通过npm version <update_type>自动改变版本
十,8,撤销已发布的npm包
撤销命令: npm unpublish 包名
强制撤销:
撤销成功!
十一,9,常见问题及解决方法
1)npm镜像源问题:
报错信息:
解决方法:
2)登录问题:
报错信息:
解决方法:
还有一个登陆问题:
报错信息:
解决方法:
请看常见问题及解决方法-4)邮箱未验证问题
3)存在包名相似或包名冲突
报错信息:
解决方法:
4)邮箱未验证问题
报错信息:
解决方法:
最后无奈联系了npm社区的客服:
可以看到npm客服的回复:QQ邮箱已经验证成功,但此时依然publish失败
十二,结尾
版权声明: 本文为 InfoQ 作者【Brave】的原创文章。
原文链接:【http://xie.infoq.cn/article/54bab64360e642efab7641427】。文章转载请联系作者。
评论