From b3176e4af71d3156e8255623c76e4e7477a80452 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edd=C3=BA=20Mel=C3=A9ndez?= Date: Thu, 20 Apr 2023 17:35:51 -0600 Subject: [PATCH] Fix generated pom with duplicated entries In d512ca5, a change was introduced which started generating pom.xml with duplicated entries when a dependency is declared as `provided`. The dependency is added with `compile` and `provided` scopes. --- core/build.gradle | 1 - gradle/publishing.gradle | 13 +++++++++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/core/build.gradle b/core/build.gradle index fd2eef047ab..f5f5e14fb09 100644 --- a/core/build.gradle +++ b/core/build.gradle @@ -125,7 +125,6 @@ dependencies { tasks.generatePomFileForMavenJavaPublication.finalizedBy( tasks.register('checkPOMdependencies', org.testcontainers.build.ComparePOMWithLatestReleasedTask) { ignore = [ - "com.google.cloud.tools:jib-core" ] } ) diff --git a/gradle/publishing.gradle b/gradle/publishing.gradle index ffeb3cb38d4..3b2b3f22211 100644 --- a/gradle/publishing.gradle +++ b/gradle/publishing.gradle @@ -57,8 +57,12 @@ publishing { def dependenciesNode = rootNode.appendNode('dependencies') - def addDependencies = { Configuration configuration, scope -> - for (dependency in configuration.resolvedConfiguration.firstLevelModuleDependencies) { + def apiDeps= project.configurations.api.resolvedConfiguration.firstLevelModuleDependencies + def providedDeps = project.configurations.provided.resolvedConfiguration.firstLevelModuleDependencies + def newApiDeps = apiDeps - providedDeps + + def addDependencies = { Set resolvedDependencies, scope -> + for (dependency in resolvedDependencies) { if (dependency.configuration.startsWith("platform-")) { continue } @@ -66,6 +70,7 @@ publishing { if (!dependency.moduleGroup || !dependency.moduleName || !dependency.moduleVersion) { throw new IllegalStateException("Wrong dependency: $dependency") } + appendNode('groupId', dependency.moduleGroup) appendNode('artifactId', dependency.moduleName) appendNode('version', dependency.moduleVersion) @@ -83,8 +88,8 @@ publishing { } } } - addDependencies(project.configurations.api, 'compile') - addDependencies(project.configurations.provided, 'provided') + addDependencies(newApiDeps, 'compile') + addDependencies(providedDeps, 'provided') } } }