ort
ort copied to clipboard
"com.sun:tools:jar must specify an absolute path" error for Gradle project
I am getting the following error while scanning my Gradle project for Android, but have no clue why:
[ERROR] 'dependencyManagement.dependencies.dependency.systemPath' for com.sun:tools:jar must specify an absolute path but is ${tools.jar} @ line 188, column 29
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:207) ~[maven-core-3.8.5.jar:3.8.5]
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:342) ~[maven-core-3.8.5.jar:3.8.5]
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:299) ~[maven-core-3.8.5.jar:3.8.5]
at org.apache.maven.project.DefaultProjectBuilder.initParent(DefaultProjectBuilder.java:960) ~[maven-core-3.8.5.jar:3.8.5]
at org.apache.maven.project.DefaultProjectBuilder.initProject(DefaultProjectBuilder.java:680) ~[maven-core-3.8.5.jar:3.8.5]
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:188) ~[maven-core-3.8.5.jar:3.8.5]
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:342) ~[maven-core-3.8.5.jar:3.8.5]
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:299) ~[maven-core-3.8.5.jar:3.8.5]
at org.apache.maven.project.DefaultProjectBuilder.initParent(DefaultProjectBuilder.java:960) ~[maven-core-3.8.5.jar:3.8.5]
at org.apache.maven.project.DefaultProjectBuilder.initProject(DefaultProjectBuilder.java:680) ~[maven-core-3.8.5.jar:3.8.5]
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:188) ~[maven-core-3.8.5.jar:3.8.5]
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:342) ~[maven-core-3.8.5.jar:3.8.5]
at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:299) ~[maven-core-3.8.5.jar:3.8.5]
at org.ossreviewtoolkit.analyzer.managers.utils.MavenSupport$parsePackage$mavenProject$2$1.invoke(MavenSupport.kt:640) ~[analyzer-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.analyzer.managers.utils.MavenSupport$parsePackage$mavenProject$2$1.invoke(MavenSupport.kt:639) ~[analyzer-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.analyzer.managers.utils.MavenSupport.wrapMavenSession(MavenSupport.kt:753) ~[analyzer-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.analyzer.managers.utils.MavenSupport.parsePackage(MavenSupport.kt:639) ~[analyzer-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.analyzer.managers.utils.MavenSupport.parsePackage$default(MavenSupport.kt:615) ~[analyzer-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.analyzer.managers.utils.GradleDependencyHandler.createPackage(GradleDependencyHandler.kt:99) ~[analyzer-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.analyzer.managers.utils.GradleDependencyHandler.createPackage(GradleDependencyHandler.kt:43) ~[analyzer-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.updateResolvedPackages$lambda-25(DependencyGraphBuilder.kt:396) ~[model-bd1a5348a2.jar:bd1a5348a2]
at java.util.HashMap.compute(HashMap.java:1229) ~[?:?]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.updateResolvedPackages(DependencyGraphBuilder.kt:396) ~[model-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.updateDependencyMappingAndPackages(DependencyGraphBuilder.kt:273) ~[model-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.addDependencyToGraph(DependencyGraphBuilder.kt:241) ~[model-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.insertIntoGraph(DependencyGraphBuilder.kt:362) ~[model-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.addDependencyToGraph(DependencyGraphBuilder.kt:247) ~[model-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.insertIntoGraph(DependencyGraphBuilder.kt:362) ~[model-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.addDependencyToGraph(DependencyGraphBuilder.kt:247) ~[model-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.insertIntoGraph(DependencyGraphBuilder.kt:362) ~[model-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.addDependencyToGraph(DependencyGraphBuilder.kt:247) ~[model-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.insertIntoGraph(DependencyGraphBuilder.kt:362) ~[model-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.addDependencyToGraph(DependencyGraphBuilder.kt:247) ~[model-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.insertIntoGraph(DependencyGraphBuilder.kt:362) ~[model-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.addDependencyToGraph(DependencyGraphBuilder.kt:247) ~[model-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.insertIntoGraph(DependencyGraphBuilder.kt:362) ~[model-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.addDependencyToGraph(DependencyGraphBuilder.kt:247) ~[model-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.model.utils.DependencyGraphBuilder.addDependency(DependencyGraphBuilder.kt:149) ~[model-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.analyzer.managers.Gradle$resolveDependencies$3.invoke(Gradle.kt:256) ~[analyzer-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.analyzer.managers.Gradle$resolveDependencies$3.invoke(Gradle.kt:201) ~[analyzer-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.utils.common.UtilsKt.temporaryProperties(Utils.kt:129) ~[common-utils-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.analyzer.managers.Gradle.resolveDependencies(Gradle.kt:201) ~[analyzer-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.analyzer.PackageManager.resolveDependencies(PackageManager.kt:251) ~[analyzer-bd1a5348a2.jar:bd1a5348a2]
at org.ossreviewtoolkit.analyzer.Analyzer$analyzeInParallel$1$1$1.invokeSuspend(Analyzer.kt:139) ~[analyzer-bd1a5348a2.jar:bd1a5348a2]
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) ~[kotlin-stdlib-1.6.21.jar:1.6.21-release-334(1.6.21)]
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) ~[kotlinx-coroutines-core-jvm-1.6.1.jar:?]
at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:42) ~[kotlinx-coroutines-core-jvm-1.6.1.jar:?]
at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:95) ~[kotlinx-coroutines-core-jvm-1.6.1.jar:?]
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570) ~[kotlinx-coroutines-core-jvm-1.6.1.jar:?]
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:749) ~[kotlinx-coroutines-core-jvm-1.6.1.jar:?]
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677) ~[kotlinx-coroutines-core-jvm-1.6.1.jar:?]
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664) ~[kotlinx-coroutines-core-jvm-1.6.1.jar:?]
Caused by: org.apache.maven.model.building.ModelBuildingException: 2 problems were encountered while building the effective model for com.sun.xml.bind.mvn:jaxb-parent:2.2.11
This is basically caused by the tools.jar property not being set when processing one of the POMs of a transitive dependency, I guess. I thought the code at
https://github.com/oss-review-toolkit/ort/blob/184f3b8725d511adbdf3f3f884c3130961135572/analyzer/src/main/kotlin/managers/utils/MavenDependencyHandler.kt#L65-L75
should cope with this, but apparently it doesn't.
This actually duplicates https://github.com/oss-review-toolkit/ort/issues/4666.