NullPointerException when version ranges overlap on snapshot.
-------------------------------------------------------------
Key: MNG-3471
URL: http://jira.codehaus.org/browse/MNG-3471
Project: Maven 2
Issue Type: Bug
Components: Artifacts and Repositories, Errors
Affects Versions: 2.0.8
Reporter: Scott Myron
Priority: Minor
Attachments: projects.zip
I have 2 projects that have conflicting dependency definitions of the same
artifact (in the attached demo, project 'a' and 'b'). Project 'a' has a
dependency on project 'c' with the version range [1,2). However, project 'b''s
dependency on 'c' is specified with version [2.0.0-SNAPSHOT,3). Project 'b'
also has a dependency on 'a'. The different version ranges were a bug on my
part, they should have been the same. However, it causes the following issue.
When I try to run "mvn dependency:analyze" or "mvn eclipse:eclipse" (or
probably any maven command which resolves the dependencies of project 'b'. I
get the following exception:
java.lang.NullPointerException
at
org.apache.maven.artifact.resolver.DefaultArtifactCollector.recurse(DefaultArtifactCollector.java:199)
at
org.apache.maven.artifact.resolver.DefaultArtifactCollector.recurse(DefaultArtifactCollector.java:370)
at
org.apache.maven.artifact.resolver.DefaultArtifactCollector.collect(DefaultArtifactCollector.java:76)
at
org.apache.maven.plugin.ide.AbstractIdeSupportMojo.doDependencyResolution(AbstractIdeSupportMojo.java:543)
at
org.apache.maven.plugin.eclipse.EclipsePlugin.doDependencyResolution(EclipsePlugin.java:1526)
at
org.apache.maven.plugin.ide.AbstractIdeSupportMojo.execute(AbstractIdeSupportMojo.java:490)
at
org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:447)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:493)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:463)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:311)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:278)
at
org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:143)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:333)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:126)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:282)
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:585)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
To reproduce:
1. Download the attached zip and extract it.
2. Run 'mvn install' on 'c-1.0.0'
3. Run 'mvn install' on 'c-2.0.0'
4. Run 'mvn install' on 'a'
5. Try running 'mvn eclipse:eclipse" or "mvn dependency:analyze" on 'b'. <---
You should receive the exception here.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira