Skip to content

Commit 93551e7

Browse files
authored
fix: Ability to analyse flatDir modules without groupIds & debug message during failed POM analysis (dependency-check#480)
Signed-off-by: Chad Wilson <[email protected]>
1 parent 8426536 commit 93551e7

File tree

1 file changed

+10
-22
lines changed

1 file changed

+10
-22
lines changed

src/main/groovy/org/owasp/dependencycheck/gradle/tasks/AbstractAnalyze.groovy

Lines changed: 10 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,14 @@ import org.gradle.api.artifacts.result.DependencyResult
3232
import org.gradle.api.artifacts.result.ResolvedArtifactResult
3333
import org.gradle.api.artifacts.result.ResolvedComponentResult
3434
import org.gradle.api.artifacts.result.ResolvedDependencyResult
35+
import org.gradle.api.attributes.Attribute
3536
import org.gradle.api.file.DirectoryProperty
3637
import org.gradle.api.model.ObjectFactory
37-
import org.gradle.maven.MavenModule
38-
import org.gradle.maven.MavenPomArtifact
39-
import org.gradle.api.attributes.Attribute
4038
import org.gradle.api.tasks.Internal
4139
import org.gradle.api.tasks.OutputDirectory
4240
import org.gradle.api.tasks.TaskAction
41+
import org.gradle.maven.MavenModule
42+
import org.gradle.maven.MavenPomArtifact
4343
import org.gradle.util.GradleVersion
4444
import org.owasp.dependencycheck.Engine
4545
import org.owasp.dependencycheck.agent.DependencyCheckScanAgent
@@ -53,8 +53,8 @@ import org.owasp.dependencycheck.dependency.naming.CpeIdentifier
5353
import org.owasp.dependencycheck.exception.ExceptionCollection
5454
import org.owasp.dependencycheck.exception.ReportException
5555
import org.owasp.dependencycheck.gradle.service.SlackNotificationSenderService
56-
import org.owasp.dependencycheck.utils.SeverityUtil
5756
import org.owasp.dependencycheck.utils.Checksum
57+
import org.owasp.dependencycheck.utils.SeverityUtil
5858
import org.owasp.dependencycheck.xml.pom.PomUtils
5959
import us.springett.parsers.cpe.CpeParser
6060

@@ -681,7 +681,7 @@ abstract class AbstractAnalyze extends ConfiguredTask {
681681
try {
682682
PomUtils.analyzePOM(deps[0], pomFile)
683683
} catch (Exception e) {
684-
logger.debug("Failed to analyze POM for ${compId.group}:${compId.name}:${compId.version}: ${t.message}")
684+
logger.debug("Failed to analyze POM for ${compId.group}:${compId.name}:${compId.version}: ${e}")
685685
}
686686
}
687687
}
@@ -735,25 +735,12 @@ abstract class AbstractAnalyze extends ConfiguredTask {
735735
p = PackageURLBuilder.aPackageURL().withType("gradle")
736736
.withName(project.name).withVersion(project.version.toString()).build()
737737
}
738-
return p;
738+
return p
739739
}
740740

741741
@groovy.transform.CompileStatic
742742
private static PackageURL convertIdentifier(ResolvedComponentResult result) {
743-
ModuleVersionIdentifier id = result.getModuleVersion()
744-
PackageURL p
745-
if (id.group) {
746-
p = new PackageURL("maven", id.group,
747-
id.name, id.version, null, null)
748-
} else {
749-
PackageURLBuilder pb = PackageURLBuilder.aPackageURL().withType("gradle")
750-
.withName(id.name)
751-
if (id.version) {
752-
pb.withVersion(id.version)
753-
}
754-
p = pb.build()
755-
}
756-
return p;
743+
return convertIdentifier(result.getModuleVersion())
757744
}
758745

759746
@groovy.transform.CompileStatic
@@ -773,15 +760,16 @@ abstract class AbstractAnalyze extends ConfiguredTask {
773760
PackageURL p
774761
if (id.group) {
775762
p = new PackageURL("maven", id.group,
776-
id.name, id.version, null, null);
763+
id.name, id.version, null, null)
777764
} else {
778765
PackageURLBuilder pb = PackageURLBuilder.aPackageURL().withType("gradle")
779766
.withName(id.name)
780767
if (id.version) {
781768
pb.withVersion(id.version)
782769
}
770+
p = pb.build()
783771
}
784-
return p;
772+
return p
785773
}
786774
/**
787775
* Adds a dependency to the engine. This is used when an artifact is scanned that is not

0 commit comments

Comments
 (0)