Sergei Ivanov created MDEP-373:
----------------------------------
Summary: dependency:tree sporadically fails to resolve version
ranges when bound to lifecycle
Key: MDEP-373
URL: https://jira.codehaus.org/browse/MDEP-373
Project: Maven 2.x Dependency Plugin
Issue Type: Bug
Components: tree
Affects Versions: 2.5.1
Environment: Maven 3.0.4
Linux 2.6.9-42.0.8.ELsmp #1 SMP Tue Jan 23 12:49:51 EST 2007 x86_64 x86_64
GNU/Linux
Java 1.6.0_27 32bit
Jenkins 1.465
Reporter: Sergei Ivanov
We use version ranges for dependencies on our internal artifacts.
We also have {{dependency:tree}} goal bound to the {{verify}} phase in the
lifecycle for all our projects. That way, we can always have a quick look at
the CI build logs in order to find our what dependency versions had the project
build pulled in.
The problem is that the invocation of dependency plugin sporadically fails with
a dependency resolution exception, even though the entire build up to the
verify phase went through without issues, and it can be seen that the artifact
in question was correctly resolved by Maven from the specified version range.
It looks like some non-deterministic ordering issue (unlikely a race condition,
because we don't run Maven in a concurrent mode). When the CI job is re-run,
the issue disappears.
Exception trace looks as follows (artifact names had to be obfuscated):
{noformat}
Waiting for Jenkins to finish collecting data
mavenExecutionResult exceptions not empty
message : Failed to execute goal
org.apache.maven.plugins:maven-dependency-plugin:2.5.1:tree
(display-dependency-tree) on project xxx-yyy-zzz: Cannot build project
dependency graph
cause : Cannot build project dependency graph
Stack trace :
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal
org.apache.maven.plugins:maven-dependency-plugin:2.5.1:tree
(display-dependency-tree) on project xxx-yyy-zzz: Cannot build project
dependency graph
at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:217)
at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)
at
org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)
at
org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)
at
org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)
at
org.jvnet.hudson.maven3.launcher.Maven3Launcher.main(Maven3Launcher.java:79)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:329)
at
org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:239)
at org.jvnet.hudson.maven3.agent.Maven3Main.launch(Maven3Main.java:158)
at hudson.maven.Maven3Builder.call(Maven3Builder.java:98)
at hudson.maven.Maven3Builder.call(Maven3Builder.java:64)
at hudson.remoting.UserRequest.perform(UserRequest.java:118)
at hudson.remoting.UserRequest.perform(UserRequest.java:48)
at hudson.remoting.Request$2.run(Request.java:287)
at
hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.maven.plugin.MojoExecutionException: Cannot build project
dependency graph
at
org.apache.maven.plugin.dependency.TreeMojo.execute(TreeMojo.java:219)
at
org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
at
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209)
... 27 more
Caused by:
org.apache.maven.shared.dependency.graph.DependencyGraphBuilderException: Could
not resolve dependencies for project
com.company:xxx-yyy-zzz:jar:3.0.1-SNAPSHOT: Failed to collect dependencies for
[com.company:xxx-yyy-zz1:jar:3.0.16 (compile),
com.company:xxx-yyy-zz2:jar:3.0.3 (compile), net.company:connector:jar:2.6.3.B
(compile), org.slf4j:jcl-over-slf4j:jar:1.6.2 (runtime),
log4j:apache-log4j-extras:jar:1.0 (runtime),
org.springframework:spring-context:jar:3.1.1.RELEASE (compile),
junit:junit:jar:4.10 (test), org.mockito:mockito-core:jar:1.9.0 (test),
org.slf4j:slf4j-api:jar:1.6.2 (compile), org.slf4j:slf4j-log4j12:jar:1.6.2
(runtime), log4j:log4j:jar:1.2.16 (runtime)]
at
org.apache.maven.shared.dependency.graph.internal.Maven3DependencyGraphBuilder.buildDependencyGraph(Maven3DependencyGraphBuilder.java:80)
at
org.apache.maven.shared.dependency.graph.internal.DefaultDependencyGraphBuilder.buildDependencyGraph(DefaultDependencyGraphBuilder.java:63)
at
org.apache.maven.plugin.dependency.TreeMojo.execute(TreeMojo.java:202)
... 29 more
Caused by: org.apache.maven.project.DependencyResolutionException: Could not
resolve dependencies for project com.company:xxx-yyy-zzz:jar:3.0.1-SNAPSHOT:
Failed to collect dependencies for [com.company:xxx-yyy-zz1:jar:3.0.16
(compile), com.company:xxx-yyy-zz2:jar:3.0.3 (compile),
net.company:connector:jar:2.6.3.B (compile), org.slf4j:jcl-over-slf4j:jar:1.6.2
(runtime), log4j:apache-log4j-extras:jar:1.0 (runtime),
org.springframework:spring-context:jar:3.1.1.RELEASE (compile),
junit:junit:jar:4.10 (test), org.mockito:mockito-core:jar:1.9.0 (test),
org.slf4j:slf4j-api:jar:1.6.2 (compile), org.slf4j:slf4j-log4j12:jar:1.6.2
(runtime), log4j:log4j:jar:1.2.16 (runtime)]
at
org.apache.maven.project.DefaultProjectDependenciesResolver.resolve(DefaultProjectDependenciesResolver.java:158)
at
org.apache.maven.shared.dependency.graph.internal.Maven3DependencyGraphBuilder.buildDependencyGraph(Maven3DependencyGraphBuilder.java:74)
... 31 more
Caused by: org.sonatype.aether.collection.DependencyCollectionException: Failed
to collect dependencies for [com.company:xxx-yyy-zz1:jar:3.0.16 (compile),
com.company:xxx-yyy-zz2:jar:3.0.3 (compile), net.company:connector:jar:2.6.3.B
(compile), org.slf4j:jcl-over-slf4j:jar:1.6.2 (runtime),
log4j:apache-log4j-extras:jar:1.0 (runtime),
org.springframework:spring-context:jar:3.1.1.RELEASE (compile),
junit:junit:jar:4.10 (test), org.mockito:mockito-core:jar:1.9.0 (test),
org.slf4j:slf4j-api:jar:1.6.2 (compile), org.slf4j:slf4j-log4j12:jar:1.6.2
(runtime), log4j:log4j:jar:1.2.16 (runtime)]
at
org.sonatype.aether.impl.internal.DefaultDependencyCollector.collectDependencies(DefaultDependencyCollector.java:258)
at
org.sonatype.aether.impl.internal.DefaultRepositorySystem.collectDependencies(DefaultRepositorySystem.java:308)
at
org.apache.maven.project.DefaultProjectDependenciesResolver.resolve(DefaultProjectDependenciesResolver.java:150)
... 32 more
Caused by: org.sonatype.aether.resolution.VersionRangeResolutionException: No
versions available for com.company:aaa-bbb:jar:[3.0.0,) within specified range
at
org.sonatype.aether.impl.internal.DefaultDependencyCollector.process(DefaultDependencyCollector.java:376)
at
org.sonatype.aether.impl.internal.DefaultDependencyCollector.process(DefaultDependencyCollector.java:544)
at
org.sonatype.aether.impl.internal.DefaultDependencyCollector.collectDependencies(DefaultDependencyCollector.java:240)
... 34 more
{noformat}
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira