我是公共 GitHub 存储库的维护者。我已经设置了 GitHub Actions 来构建发布到 GitHub Packages。您可以看到包已在此处创建:
https://github.com/paulschwarz/spring-dotenv/packages/135114
我注意到的第一件事是 GitHub 只提供了一个 Maven 安装片段。我使用此代码将依赖项添加到另一个项目,它似乎工作。
现在我想将此包导入 Gradle 项目。我添加了
dependencies {
implementation ('me.paulschwarz:spring-dotenv:0.0.3')
}
和 gradle 告诉我
Could not find me.paulschwarz:spring-dotenv:0.0.3.
Searched in the following locations:
- https://jcenter.bintray.com/me/paulschwarz/spring-dotenv/0.0.3/spring-dotenv-0.0.3.pom
- https://repo.maven.apache.org/maven2/me/paulschwarz/spring-dotenv/0.0.3/spring-dotenv-0.0.3.pom
这已经很奇怪了,因为我的 Maven 项目似乎没有解决依赖的问题。我必须说我很好奇它是如何工作的?GitHub Packages 肯定没有与 JCenter 或 Maven Central 集成吗?
无论如何,下一步,添加存储库
repositories {
jcenter()
mavenCentral()
maven { url = uri('https://maven.pkg.github.com/paulschwarz/spring-dotenv') }
}
此时,Gradle 应该知道在哪里可以找到包。但是,我明白了
> Could not resolve me.paulschwarz:spring-dotenv:0.0.3.
> Could not get resource 'https://maven.pkg.github.com/paulschwarz/spring-dotenv/me/paulschwarz/spring-dotenv/0.0.3/spring-dotenv-0.0.3.pom'.
> Could not GET 'https://maven.pkg.github.com/paulschwarz/spring-dotenv/me/paulschwarz/spring-dotenv/0.0.3/spring-dotenv-0.0.3.pom'. Received status code 401 from server: Unauthorized
这真的是未经授权的401吗?还是 URL 错误并且它正在尝试访问授权端点?
如果是真的,那为什么?这是一个带有公共包的公共仓库。我可以直接从 GitHub 页面匿名下载包。我在 Gradle 中做错了什么?