From 999c4964a6b8464ab7fea42a32e701ebf9e9ffa3 Mon Sep 17 00:00:00 2001 From: Carl Mai Date: Wed, 8 May 2024 09:50:26 +0200 Subject: [PATCH] fix missing artifact resolver for the bom-resolution --- .../groovy/com/github/jk1/license/reader/ModuleReader.groovy | 2 +- .../groovy/com/github/jk1/license/reader/PomReader.groovy | 3 ++- .../license/reader/PomDependencyResolutionFuncSpec.groovy | 5 +++++ 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/main/groovy/com/github/jk1/license/reader/ModuleReader.groovy b/src/main/groovy/com/github/jk1/license/reader/ModuleReader.groovy index 88b68670..0611fb2b 100644 --- a/src/main/groovy/com/github/jk1/license/reader/ModuleReader.groovy +++ b/src/main/groovy/com/github/jk1/license/reader/ModuleReader.groovy @@ -69,7 +69,7 @@ class ModuleReaderImpl implements ModuleReader { extraPomResults.each { ResolvedArtifactResult artifact -> LOGGER.info("Processing artifact: $artifact ($artifact.file)") if (artifact.file.exists()) { - def pom = pomReader.readPomData(artifact) + def pom = pomReader.readPomData(project, artifact) if (pom) moduleData.poms << pom } else { LOGGER.info("Skipping artifact file $artifact.file as it does not exist") diff --git a/src/main/groovy/com/github/jk1/license/reader/PomReader.groovy b/src/main/groovy/com/github/jk1/license/reader/PomReader.groovy index 5e60359c..f6cc30c1 100644 --- a/src/main/groovy/com/github/jk1/license/reader/PomReader.groovy +++ b/src/main/groovy/com/github/jk1/license/reader/PomReader.groovy @@ -74,7 +74,8 @@ class PomReader { } } - PomData readPomData(ResolvedArtifactResult artifact) { + PomData readPomData(Project project, ResolvedArtifactResult artifact) { + resolver = new CachingArtifactResolver(project) GPathResult pomContent = findAndSlurpPom(artifact.file) return readPomFile(pomContent) } diff --git a/src/test/groovy/com/github/jk1/license/reader/PomDependencyResolutionFuncSpec.groovy b/src/test/groovy/com/github/jk1/license/reader/PomDependencyResolutionFuncSpec.groovy index d7539f9a..a4daa2d6 100644 --- a/src/test/groovy/com/github/jk1/license/reader/PomDependencyResolutionFuncSpec.groovy +++ b/src/test/groovy/com/github/jk1/license/reader/PomDependencyResolutionFuncSpec.groovy @@ -56,6 +56,7 @@ class PomDependencyResolutionFuncSpec extends AbstractGradleRunnerFunctionalSpec then: runResult.task(":generateLicenseReport").outcome == TaskOutcome.SUCCESS + // 2 licenses because it also resolves jackson-parent, which has its own license configurationsString == """[ { "dependencies": [ @@ -80,6 +81,10 @@ class PomDependencyResolutionFuncSpec extends AbstractGradleRunnerFunctionalSpec { "url": "http://www.apache.org/licenses/LICENSE-2.0.txt", "name": "Apache License, Version 2.0" + }, + { + "url": "http://www.apache.org/licenses/LICENSE-2.0.txt", + "name": "The Apache Software License, Version 2.0" } ] }