因此,我有一个GitHub project,配置了程序包注册表。它有两个软件包:
软件包页面仅具有针对Maven的指令,此外,指令已损坏(maven install so57323260
不是在Maven中添加依赖项的有效方法):
问题是:如何在Gradle版本中添加that package?
答案 0 :(得分:6)
新答案:
GitHub已发布了官方指南:Configuring Gradle for use with GitHub Packages。
旧答案:
首先,在您的Gradle构建配置中将Github Package Registry配置为Maven存储库:
build.gradle.kts:
repositories {
jcenter()
maven("https://maven.pkg.github.com/madhead") {
credentials {
username = "madhead"
password = "<token>"
}
}
}
您可以在account settings page中生成令牌。
现在,添加类似的依赖项:
build.gradle.kts:
dependencies {
implementation("so57323260:so57323260:1.0.0")
implementation("so57323260:test:1.0.2")
}
此处groupId
是存储库的名称,artifactId
是已发布程序包的名称。
答案 1 :(得分: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")
}
}
}
第三步:在build.gradle中添加你要消费的包:
dependencies {
implementation 'com.example:package:version'
}
有关更多详细信息(包括如何配置 Maven),请参阅我在此处贡献的 Wiki 中的说明:https://github.com/GumTreeDiff/gumtree/wiki/Getting-Started