npm发布包。最近在研究node的相关知识。虽然发布包是最基本的一点,但是有些地方不小心很容易出错。我已经整理好了我可能拥有的东西。以往发布包过程中的一些错误,现分享给大家:正确的包发布步骤:执行npminit生成package.json。package.json字段多且复杂,我们最好让系统为我们生成关键部分,这种情况下使用npminit是最正确的方式。它以问答的形式获取一些重要的信息,然后生成package.json。不够清楚?执行上图中的npmadduser,就会以问答的形式知道你的用户名、密码和公开邮箱。如果不执行这些操作,如果直接去npmpublish,就会报错,关键的部分就在这里!错误!需要auth发布npmERR所需的auth和email!needauthYouneedtoauthorizethismachineusingnpmadduser错误。请记住将注册表切换回原始来源。因为原来是http://registry.npmjs.org...,我们一开始可能换成了国内的淘宝镜像:http://registry.npm.taobao.org。但是淘宝的图片没有权限上传,所以会报这样的错误:npmERR!发布失败PUT403npmERR!error:no_permsprivatemodeenable,onlyadmincanpublishthismodule:nodebb-plugin-route-cms至少有两种方法:命令:npmadduser1)修改~/.npmrc中的注册表字段(命令:vi~/.npmrc)2)直接在命令行修改。不够清楚?继续上图!执行npmpublish时,由于需要访问~/.npm目录,出于某种原因(权限要正确),需要以root账户权限执行。所以在这里添加sudo。如果不加sudo,会出现这样的错误:npmERR!addLocal无法安装.npm错误!错误:EACCES,打开'/home/jiangcaiyang/.npm/nodebb-plugin-route-cms/0.0.1/package/package.json'npmERR!{[错误:EACCES,打开'/home/jiangcaiyang/.npm/nodebb-plugin-route-cms/0.0.1/package/package.json']npmERR!错误号:3,npm错误!代码:'EACCES',npm错误!路径:'/home/jiangcaiyang/.npm/nodebb-plugin-route-cms/0.0.1/package/package.json'}npm错误!错误!请尝试以root/Administrator身份再次运行此命令。--tag表示标记版本号。这里的version是按照semver的标准制定的(参考这里)。版本格式:主版本号。次版本号。revisionnumber,版本号递增规则如下:majorversionnumber:当你做一个不兼容的API修改时,minorversionnumber:当你做一个向后兼容的功能添加时,revisionnumber:当你做一个向后兼容的bugfix时。可以在“主版本号.次版本号.修订号”后面加上以前的版本号和版本编译信息作为扩展名。最后继续以一张图结束我们的分享。在大型项目的建设过程中,很多小的失误都会耗费我们很多的时间去完成,所以提前知道,防患于未然就显得尤为重要。重要的。
