首页 > 解决方案 > Npm 发布到私有范围不断失败

问题描述

我最近创建了一个新组织,并采用付费计划来发布无限的私人包。

但是,每次我尝试将我的包发布到我的组织时,它总是给我以下错误:

npm ERR! publish Failed PUT 403
npm ERR! code E403
npm ERR! Forbidden : @myScopeName/myPackageName

我已经注销,然后作为范围登录;像这样:

npm login scope=myScopeName

然后返回以下

logged in as myUserName to scope @myScopeName on http://registry.npmjs.org/

我检查了我的.npmrc文件,我有以下几行:

registry=http://registry.npmjs.org/
scope=myScopeName
@myScopeName:registry=http://registry.npmjs.org

但是我仍然无法发布我的包。有谁知道我是否忘记了其他事情,或者我是否根据上述内容做错了什么?

谢谢!

标签: npmpackagepublishorganizationnpm-publish

解决方案


这是一个可以有很多来源的错误。我将在下面列出一些可能性:

  1. 您的电子邮件地址未经过验证。
  2. 该包被分配到一个组,您不在其中。
  3. 您提供的包的名称类似于您范围内现有的包名称。
  4. 范围名称中的拼写错误。
  5. 格式错误的包名称。
  6. ...

通过实验,我实际上发现私有 npm 包的命名方案与官方记录的不同。貌似私推包不能包含下划线,可能其他的东西也和官方文档有冲突。


推荐阅读