浏览代码

Always use archive base name as the pom artifact id (#56447)

Mark Vieira 5 年之前
父节点
当前提交
a2b1ec1bbe

+ 12 - 2
buildSrc/src/main/groovy/org/elasticsearch/gradle/BuildPlugin.groovy

@@ -300,7 +300,7 @@ class BuildPlugin implements Plugin<Project> {
             }
 
             project.tasks.withType(GenerateMavenPom).configureEach({ GenerateMavenPom pomTask ->
-                pomTask.destination = "${project.buildDir}/distributions/${project.convention.getPlugin(BasePluginConvention).archivesBaseName}-${project.version}.pom"
+                pomTask.destination = { "${project.buildDir}/distributions/${project.convention.getPlugin(BasePluginConvention).archivesBaseName}-${project.version}.pom" }
             } as Action<GenerateMavenPom>)
 
             PublishingExtension publishing = project.extensions.getByType(PublishingExtension)
@@ -313,7 +313,7 @@ class BuildPlugin implements Plugin<Project> {
                 // Here we manually add any project dependencies in the "shadow" configuration to our generated POM
                 publication.pom.withXml(this.&addScmInfo)
                 publication.pom.withXml { xml ->
-                    Node root = xml.asNode();
+                    Node root = xml.asNode()
                     root.appendNode('name', project.name)
                     root.appendNode('description', project.description)
                     Node dependenciesNode = (root.get('dependencies') as NodeList).get(0) as Node
@@ -328,6 +328,11 @@ class BuildPlugin implements Plugin<Project> {
                     }
                 }
                 generatePomTask.configure({ Task t -> t.dependsOn = ['generatePomFileForShadowPublication'] } as Action<Task>)
+
+                // have to defer this until archivesBaseName is set
+                project.afterEvaluate {
+                    publication.artifactId = project.convention.getPlugin(BasePluginConvention).archivesBaseName
+                }
             }
         }
 
@@ -336,6 +341,11 @@ class BuildPlugin implements Plugin<Project> {
             PublishingExtension publishing = project.extensions.getByType(PublishingExtension)
             MavenPublication nebulaPublication = (MavenPublication) publishing.publications.getByName('nebula')
             nebulaPublication.pom.withXml(this.&addScmInfo)
+
+            // have to defer this until archivesBaseName is set
+            project.afterEvaluate {
+                nebulaPublication.artifactId = project.convention.getPlugin(BasePluginConvention).archivesBaseName
+            }
         }
     }
 

+ 0 - 8
client/rest/build.gradle

@@ -27,14 +27,6 @@ sourceCompatibility = JavaVersion.VERSION_1_8
 group = 'org.elasticsearch.client'
 archivesBaseName = 'elasticsearch-rest-client'
 
-publishing {
-  publications {
-    nebula {
-      artifactId = archivesBaseName
-    }
-  }
-}
-
 dependencies {
   compile "org.apache.httpcomponents:httpclient:${versions.httpclient}"
   compile "org.apache.httpcomponents:httpcore:${versions.httpcore}"

+ 0 - 8
client/sniffer/build.gradle

@@ -25,14 +25,6 @@ sourceCompatibility = JavaVersion.VERSION_1_8
 group = 'org.elasticsearch.client'
 archivesBaseName = 'elasticsearch-rest-client-sniffer'
 
-publishing {
-  publications {
-    nebula {
-      artifactId = archivesBaseName
-    }
-  }
-}
-
 dependencies {
   compile project(":client:rest")
   compile "org.apache.httpcomponents:httpclient:${versions.httpclient}"

+ 0 - 8
modules/lang-painless/spi/build.gradle

@@ -23,14 +23,6 @@ apply plugin: 'nebula.maven-base-publish'
 group = 'org.elasticsearch.plugin'
 archivesBaseName = 'elasticsearch-scripting-painless-spi'
 
-publishing {
-  publications {
-    nebula {
-      artifactId = archivesBaseName
-    }
-  }
-}
-
 dependencies {
   compile project(":server")
 }