Issue Details (XML | Word | Printable)

Key: MNG-2899
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Major Major
Assignee: Jason van Zyl
Reporter: Jason van Zyl
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Maven 2

In cases where ${version} is used in depMan we get null versions in attached artifacts

Created: 25/Mar/07 11:36 AM   Updated: 25/Mar/07 06:45 PM
Component/s: None
Affects Version/s: None
Fix Version/s: 2.0.6

Time Tracking:
Not Specified

Complexity: Intermediate


 Description  « Hide
This is from the Yoko build for the api module. The parent POM is here:

http://svn.apache.org/repos/asf/incubator/yoko/trunk/pom.xml

java.lang.NullPointerException
at org.apache.maven.project.artifact.AttachedArtifact.getVersion(AttachedArtifact.java:122)
at org.apache.maven.artifact.DefaultArtifact.validateIdentity(DefaultArtifact.java:147)
at org.apache.maven.artifact.DefaultArtifact.<init>(DefaultArtifact.java:122)
at org.apache.maven.project.artifact.AttachedArtifact.<init>(AttachedArtifact.java:42)
at org.apache.maven.project.DefaultMavenProjectHelper.attachArtifact(DefaultMavenProjectHelper.java:53)
at org.apache.maven.plugin.jar.AbstractJarMojo.execute(AbstractJarMojo.java:179)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:442)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:539)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:480)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:459)
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:334)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:125)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:272)
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)



 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
Jason van Zyl added a comment - 25/Mar/07 01:15 PM
Dan, I'm sure this is being caused by the same thing that caused the last problem in yoko. I'm sure we can track it down and fix it. For some reason artifact info is not making it though when ${version} is being used. From a brief look it seems that because depMan was never used before consistently the null makes it through in the process and just propagates because we don't check it and just assume it will be there. It resolves to an empty string which is no longer null and makes it through the gate.

Jason van Zyl added a comment - 25/Mar/07 06:34 PM
This is happening when attaching test JARs. The value for the versionRange just disappears. It's there when attaching the JAR, but not there when attaching the test JAR.

Jason van Zyl added a comment - 25/Mar/07 06:45 PM
When the range has gone null, I just create it again from the version. I've build CXF, QPid, Yoko, and Geronimo, Maven, Plexus, and the ITs and it's all working. I'll get Brian Fox to check with his build as well.