遵循本指南:
https://help.github.com/en/articles/configuring-gradle-for-use-with-github-package-registry
但是当我将 gradle 的 maven-publish 应用到子模块时,我收到以下错误:
在 org.gradle.api.Project 类型的项目“:cms-data-contract”上找不到参数 [build_81s2rz8tveop6ddsgghnyy4gk$_run_closure1$_closure4@395cd54] 的方法 Publications()。
任务失败
我试图在该子项目中显式应用 maven-publish 插件,但它不起作用。该插件的应用可以在此日志语句中看到:
:25:11.198 [DEBUG] [org.gradle.internal.operations.DefaultBuildOperationExecutor] 构建操作“将插件 org.gradle.api.publish.plugins.PublishingPlugin 应用到项目“:cms-data-contract””开始于 14:25: 11.198 [DEBUG] [org.gradle.internal.operations.DefaultBuildOperationExecutor] 完成构建操作'将插件 org.gradle.api.publish.plugins.PublishingPlugin 应用到项目':cms-data-contract'' 14:25:11.198 [DEBUG ] [org.gradle.internal.operations.DefaultBuildOperationExecutor] 构建操作 'Apply plugin org.gradle.api.publish.plugins.PublishingPlugin to project ':cms-data-contract'' 完成
和
14:22:51.786 [DEBUG] [org.gradle.internal.operations.DefaultBuildOperationExecutor] 构建操作“注册任务:cms-data-contract:publishAllPublicationsToGitHubPackagesRepository”开始 14:22:51.787 [DEBUG] [org.gradle.internal.operations .DefaultBuildOperationExecutor] 完成构建操作'注册任务:cms-data-contract:publishAllPublicationsToGitHubPackagesRepository' 14:22:51.787 [DEBUG] [org.gradle.internal.operations.DefaultBuildOperationExecutor] 构建操作'注册任务:cms-data-contract:publishAllPublicationsToGitHubPackagesRepository ' 完全的
我正在使用以下内容:
plugins {
id("maven-publish")
}
subprojects {
apply plugin: "maven-publish"
publishing {
repositories {
maven {
name = "GitHubPackages"
url = uri("https://maven.pkg.github.com/OWNER/REPOSITORY")
credentials {
username = project.findProperty("gpr.user") ?: System.getenv("GPR_USER"))
password = project.findProperty("gpr.key") ?: System.getenv("GPR_API_KEY"))
}
}
}
publications {
gpr(MavenPublication) {
from(components.java)
}
}
}
}
该指南建议使用:
plugins {
id("maven-publish") apply false
}
但这失败了,但有一个例外
我应该能够将人工制品发布到 github 注册表