diff --git a/analyzer/build.gradle.kts b/analyzer/build.gradle.kts index 2677422a..5b4947c0 100644 --- a/analyzer/build.gradle.kts +++ b/analyzer/build.gradle.kts @@ -131,7 +131,7 @@ idea.module { } } -val functionalTest = tasks.register("functionalTest") { +tasks.register("functionalTest") { description = "Runs functional tests" group = "verification" testClassesDirs = sourceSets["functionalTest"].output.classesDirs @@ -168,22 +168,13 @@ tasks { } } -// Implicit dependencies detected by Gradle 7 -// See -tasks.named("check") { - dependsOn(functionalTest) -} - -tasks.named("delombok") { - dependsOn("spotlessJava") -} - -tasks.named("test") { - dependsOn("shadowJar") -} - -tasks.named("functionalTest") { - dependsOn("shadowJar") +// We publish the init gradle file to make it easy for tools that use the plugin to set it up +// without having to create their own init gradle file. +val analyzerFile = layout.buildDirectory.file("resources/main/analyzer-init.gradle") +val prepareAnalyzerInit = artifacts.add("default", analyzerFile.get().asFile) { + classifier = "init" + extension = "gradle" + builtBy("processResources") } afterEvaluate { @@ -192,6 +183,7 @@ afterEvaluate { getByName("pluginMaven") { artifact(testJar.get()) artifact(testSourcesJar.get()) + artifact(prepareAnalyzerInit) } } } diff --git a/build.gradle.kts b/build.gradle.kts index 03b69930..4ef1cd96 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -138,7 +138,7 @@ tasks.withType().configureEach { tasks.getByName("afterReleaseBuild") { dependsOn( - ":publishToCentral", ":analyzer:publishPlugins", ":manipulation:publishPlugins" + ":analyzer:publishPlugins", ":manipulation:publishPlugins", ":publishToCentral" ) } @@ -369,7 +369,7 @@ subprojects { // TODO: ### shadow 9 doesn't need this? // Make assemble/build task depend on shadowJar tasks["assemble"].dependsOn(tasks["shadowJar"]) - tasks["build"].dependsOn(tasks["shadowJar"]) + // tasks["build"].dependsOn(tasks["shadowJar"]) tasks.withType().configureEach { // ensure that a single jar is built which is the shadowed one @@ -435,24 +435,6 @@ subprojects { withType { generatePom() } - getByName(publicationComponent) { - // we publish the init gradle file to make it easy for tools that use - // the plugin to set it up without having to create their own init gradle file - if (project.name == "analyzer") { - artifact("${sourceSets["main"].output.resourcesDir}/analyzer-init.gradle") { - classifier = "init" - extension = "gradle" - } - tasks.configureEach { - if (name == "jar") { - if (isReleaseBuild) { - mustRunAfter("signPluginMavenPublication") - } - } - } - } - generatePom() - } } } } @@ -494,6 +476,12 @@ subprojects { tasks.withType { onlyIf { isReleaseBuild } + // Force ordering to avoid + // Reason: Task ':analyzer:jar' uses this output of task ':analyzer:signPluginMavenPublication' + // without declaring an explicit or implicit dependency. + // dependsOn(tasks["jar"]) + dependsOn(tasks["assemble"]) + mustRunAfter(tasks["test"]) } java { sourceCompatibility = JavaVersion.VERSION_1_8 @@ -533,7 +521,8 @@ subprojects { } tasks.withType().configureEach { - options.quiet() + // https://github.com/gradle/gradle/issues/7038 + (options as StandardJavadocDocletOptions).addBooleanOption("Xdoclint:none", true) } tasks.withType().configureEach { diff --git a/cli/build.gradle.kts b/cli/build.gradle.kts index e6fb7fa2..d86ae96f 100644 --- a/cli/build.gradle.kts +++ b/cli/build.gradle.kts @@ -61,10 +61,6 @@ tasks { attributes["Main-Class"] = "org.jboss.gm.cli.Main" } } - - "test" { - dependsOn(":analyzer:assemble") - } } // Implicit dependencies detected by Gradle 7 @@ -74,10 +70,6 @@ tasks.named("test") { } if (org.gradle.util.GradleVersion.current() >= org.gradle.util.GradleVersion.version("5.0")) { - tasks.named("publishShadowPublicationToMavenLocal") { - dependsOn("shadowJar") - } - tasks.named("generateMetadataFileForShadowPublication") { dependsOn("jar") } diff --git a/manipulation/build.gradle.kts b/manipulation/build.gradle.kts index 18bb6f0b..3c405aa2 100644 --- a/manipulation/build.gradle.kts +++ b/manipulation/build.gradle.kts @@ -112,28 +112,10 @@ idea.module { } } -val functionalTest = tasks.register("functionalTest") { +tasks.register("functionalTest") { description = "Runs functional tests" group = "verification" testClassesDirs = sourceSets["functionalTest"].output.classesDirs classpath = sourceSets["functionalTest"].runtimeClasspath mustRunAfter(tasks["test"]) } - -// Implicit dependencies detected by Gradle 7 -// See -tasks.named("check") { - dependsOn(functionalTest) -} - -tasks.named("delombok") { - dependsOn("spotlessJava") -} - -tasks.named("test") { - dependsOn("shadowJar") -} - -tasks.named("functionalTest") { - dependsOn("shadowJar") -}