2

遵循本指南:

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 注册表

4

1 回答 1

1

也许您需要正确完成这些属性

  1. OWNER
  2. REPOSITORY
  3. GPR_USER
  4. GPR_API_KEY

见@link https://github.com/youngerier/packagesdemo

于 2020-01-10T08:34:37.443 回答