从GitHub软件包注册表中安装公共npm软件包

时间:2020-03-02 15:04:55

标签: github

1。我在组织存储库中发布了 public 程序包。
回购链接:https://github.com/JX3BOX/jx3box-config/packages/141887

2。我想从另一个仓库中安装软件包。 我已经在package.json

中设置了依赖项
"dependencies": {
    "@jx3box/jx3box-config": "^1.0.3",

然后我创建了一个名为.npmrc的文件,并设置了:

@jx3box:registry=https://npm.pkg.github.com

3。当我使用github操作进行构建时 发生错误

Running build scripts... npm install && npm run build
npm ERR! code E401
npm ERR! Unable to authenticate, need: Basic realm="GitHub Package Registry"

这意味着也许我需要身份验证。但这是一个公共程序包。它也应该也是身份验证吗?

4。现在,我必须像之前一样在文件.npmrc中添加一行

//npm.pkg.github.com/:_authToken=<mytoken>

但是如何设置动作。 还是因为这是公共的PKG,我如何不需要任何身份验证?


非常感谢!! ^ _ ^

1 个答案:

答案 0 :(得分:1)

这可能已经解决了,但还是发布了,因为这个问题在 Google 上排名很高。

来自 GitHub 文档:

<块引用>

您需要访问令牌才能发布、安装和删除软件包。您可以使用个人访问令牌直接向 GitHub 包或 GitHub API 使用您的用户名进行身份验证。[...]

未经身份验证,您无法从 GitHub npm 注册表安装包(甚至是公共包)。

此处有更多详细信息和多种身份验证方法:

https://docs.github.com/en/packages/guides/configuring-npm-for-use-with-github-packages#authenticating-to-github-packages