0

Using Gradle 7.5.1 and Kotlin DSL scripts.

I have a multi-project that publishes individual libraries to Maven - this is working. I'm also using the researchgate release plugin to tag and bump the version number - this is also working.

What I would like to do is to run the release plugin before publishing the artifacts, and I can't find any examples of how to accomplish this. For reference, this is my main build.gradle.kt file (publishing to Maven local only while testing):

plugins {
    id("net.researchgate.release") version "3.0.2"
}

allprojects {
    apply(plugin = "java")
    apply(plugin = "java-library")
    apply(plugin = "maven-publish")

    repositories {
        mavenLocal()
        mavenCentral()
    }
}

// also tried with PublishToMavenRepository and AbstractPublishToMaven
tasks.withType<PublishToMavenLocal> { 
    dependsOn("release")
}

subprojects {
    configure<PublishingExtension> {
        publications {
            create<MavenPublication>("maven-java") {
                from(components["java"])
            }
        }
    }
}

When I run gradle publish, this is what I get:

> Task :publishToMavenLocal UP-TO-DATE
> Task :auth:compileJava UP-TO-DATE
> Task :auth:processResources NO-SOURCE
> Task :auth:classes UP-TO-DATE
> Task :auth:jar UP-TO-DATE
> Task :auth:generateMetadataFileForMaven-javaPublication
> Task :auth:generatePomFileForMaven-javaPublication
> Task :auth:publishMaven-javaPublicationToMavenLocal
> Task :auth:publishToMavenLocal
> Task :config:compileJava UP-TO-DATE
> Task :config:processResources NO-SOURCE
> Task :config:classes UP-TO-DATE
> Task :config:jar UP-TO-DATE
> Task :config:generateMetadataFileForMaven-javaPublication
> Task :config:generatePomFileForMaven-javaPublication
> Task :config:publishMaven-javaPublicationToMavenLocal
> Task :config:publishToMavenLocal
> Task :logging:compileJava UP-TO-DATE
> Task :logging:processResources NO-SOURCE
> Task :logging:classes UP-TO-DATE
> Task :logging:jar UP-TO-DATE
> Task :logging:generateMetadataFileForMaven-javaPublication
> Task :logging:generatePomFileForMaven-javaPublication
> Task :logging:publishMaven-javaPublicationToMavenLocal
> Task :logging:publishToMavenLocal

BUILD SUCCESSFUL in 319ms

No mention of the release task.

Al A
  • 175
  • 2
  • 15
  • 1
    You've applied the `net.researchgate.release` to the root project, but not the `maven-publish` plugin, so the root project doesn't have any Maven releases - `tasks.withType()` won't match any tasks. – aSemy Oct 18 '22 at 09:33

0 Answers0