13

所以,我有一个配置了包注册表的GitHub 项目。它有两个包:

在 Github 包注册表中发布的两个包

包页面只有 Maven 的说明,除此之外,说明被破坏(maven install so57323260不是在 Maven 中添加依赖项的有效方法):

带有损坏的 Maven 说明的包页面

问题是:如何在 Gradle 构建中添加该包?

4

2 回答 2

12

新答案

GitHub 发布了官方指南:配置 Gradle 以与 GitHub Packages 一起使用


旧答案

首先,在 Gradle 构建配置中将 Github 包注册表配置为 Maven 存储库:

build.gradle.kts:

repositories {
    jcenter()
    maven("https://maven.pkg.github.com/madhead") {
        credentials {
            username = "madhead"
            password = "<token>"
        }
    }
}

您可以在您的帐户设置页面中生成一个令牌。

现在,添加一个依赖项,例如:

build.gradle.kts:

dependencies {
    implementation("so57323260:so57323260:1.0.0")
    implementation("so57323260:test:1.0.2")
}

groupId是 repo 的名称,artifactId也是已发布包的名称。

于 2019-08-06T10:06:06.127 回答
5

对于担心个人访问令牌安全的人,官方指南建议通过 Gradle 属性或系统属性访问用户名和密码。

Step1:将 USERNAME 和 TOKEN 设置为系统属性(使用export或),或在项目根文件夹下set创建一个文件,如下所示:gradle.properties

gpr.user=<USERNAME>
gpr.token=<TOKEN>

Step2:在 build.gradle 中添加带有身份验证的 Github 包注册表:

    repositories {
        maven {
            name = "GitHubPackages"
            url = uri("https://maven.pkg.github.com/OWNER/REPOSITORY")
            credentials {
                username = project.findProperty("gpr.user") ?: System.getenv("USERNAME")
                password = project.findProperty("gpr.token") ?: System.getenv("TOKEN")
            }
        }
    }

第 3 步:在 build.gradle 中添加您要使用的包:

dependencies {
    implementation 'com.example:package:version'
}

有关更多详细信息(包括如何配置 Maven),请参阅我在此处贡献的 Wiki 中的说明:https ://github.com/GumTreeDiff/gumtree/wiki/Getting-Started

于 2021-03-27T03:24:22.773 回答