当前位置: 首页 > Web前端 > HTML

npmpublish发布Angular库报错及解决方法

时间:2023-03-28 11:48:28 HTML

今天根据npm文件,打算把自己开发的npm库发布到公网:npm登录后,使用命名行npmconfigsetregistry=http://registry.npmjs.org,遇到如下错误:npm通知从2021年10月4日开始,所有与npm注册表的连接(包括软件包安装)都必须使用TLS1.2或更高版本。您当前正在使用明文http进行连接。请访问GitHub博客了解更多信息:https://github.blog/2021-08-2...npmERR!代码E426npm错误!426需要升级-PUThttp://registry.npmjs.org/my-libnpmERR!可以在以下位置找到此运行的完整日志:npmERR!C:\Users\I042416\AppData\Roaming\npm-cache\_logs\2021-10-17T02_40_15_408Z-debug.log大意是从2021年10月4日开始,所有与npm注册表的连接都必须使用TLS1.2。所以我将命名行更改为使用https,旧的错误消息消失了:npmconfigsetregistry=http://registry.npmjs.org但是我收到了新的错误消息:你没有发布“my-lib”的权限.您是否以正确的用户身份登录?错误!代码E403npm错误!403403Forbidden-PUThttps://registry.npmjs.org/my...-你没有发布“my-lib”的使命。您是否以正确的用户身份登录?错误!403在大多数情况下,您或您的依赖项之一正在请求npmERR!403一个包版本被你的安全策略禁止。npmERR!可以在以下位置找到此运行的完整日志:npmERR!C:\Users\I042416\AppData\Roaming\npm-cache\_logs\2021-10-17T02_44_36_666Z-debug.log出现这个错误的原因是我在包.json中使用的库名是my-lib,我从npm教程中复制的。npm仓库已经有人上传了同名库,所以我没有上传同名库的权限。只需要修改package.json中的name字段:之后就可以成功上传库了:Jerry更多原创文章在这里:《汪子熙》: