我目前正在尝试建立一个Jenkins和一个私有的npm存储库(Sonatype Nexus)。当我试图在Jenkins构建管道中发布到存储库时,会出现以下错误。
+ npm publish --registry https://<my-private-registry>/repository/npm-private/
npm notice
npm notice package: ts-acoustics@0.0.0
npm notice === Tarball Contents ===
npm notice 2.4kB Jenkinsfile
...
('notice' level info about the files)
...
npm notice === Tarball Details ===
npm notice name: ts-acoustics
npm notice version: 0.0.0
npm notice package size: 13.8 kB
npm notice unpacked size: 47.5 kB
npm notice shasum: 554b6d2b41321d78e00f6a309bb61c9181a2e3d6
npm notice integrity: sha512-QtExdu6IqZ+lH[...]r+HXolo4YCFPg==
npm notice total files: 17
npm notice
npm ERR! code E403
npm ERR! 403 403 Forbidden - PUT https://<my-private-registry>/repository/npm-private/ts-acoustics
npm ERR! 403 In most cases, you or one of your dependencies are requesting
npm ERR! 403 a package version that is forbidden by your security policy.我没有找到更多的信息,为什么它是禁止在Nexus日志和这个打开的GitHub错误告诉我,上面的错误文本是导致错误的方向在大多数情况下?!
知道如何进行出版工作吗?!
更新1:我刚刚看到,当我尝试手动发布它时,我也遇到了同样的问题!,因此,由于简单的原因,詹金斯退出了等式。
更新2:我可以做npm adduser --registry...和npm告诉我
Logged in as <my-user> on https://<my-private-registry>/repository/npm-private/.当我执行npm whoami --registry...时,它会显示正确的用户名。
当我在项目中执行npm publish --registry...时,它显示了403错误
发布于 2020-07-10 19:08:19
如何调试:
你可以从所有的答案中看到,有很多事情会导致同样的失败信息。以下是如何找出您的根本原因:
在Nexus -> 菜单项"Logging"中
在这里,您可以简单地更改每个java包的日志级别,Nexus由运行时组成。
更改包的所有LogLevels,包括“安全性”或"rest“,以再次跟踪和触发您的请求。
在LogViewer (也是Nexus的一部分)中,您现在可以看到理解问题所需的所有信息。
在我的例子中,我必须将nx-repository-view-*-*-edit特权添加到我为Jenkins用于登录到Nexus的用户创建的角色中。我认为nx-repository-view-*-*-add已经足够出版了。
希望能帮上忙!
发布于 2020-11-06 17:16:40
如果你和我一样,遵循Node的例子,或者其他的例子,你刚刚做了你的帐户,你的错误很可能是我的。
我没有核实我的电子邮件地址,并得到了同样的错误(这是一个新的帐户)。一旦我验证了,它就起作用了(甚至在VPN上)。
检查您的电子邮件和核实您的帐户。
发布于 2021-08-04 09:28:52
这主要发生在两个场景中。
package.json中的包名,然后再试一次!备注: 2)为我工作。
https://stackoverflow.com/questions/62830477
复制相似问题