Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Incomplete
-
2.0.7
-
None
-
None
-
None
Description
I was experimenting with maven using killer-app sample (http://www.sonatype.com/book/examples/book-killerapp.zip) from Sonatipe book (http://www.sonatype.com/book/index.html) and immediately hit a show stopper.
Maven 2.0.3 is able to build the sample out of the box, but any later version up to 2.0.7 chokes telling that it's not able to find the parent project:
C:\home\prjHome\mavenTest\killerapp>mvn help:effective-pom
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[ERROR] FATAL ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Failed to resolve artifact.
GroupId: com.training.killerapp
ArtifactId: killerapp
Version: 1.0-SNAPSHOT
Reason: Unable to download the artifact from any repository
com.training.killerapp:killerapp:pom:1.0-SNAPSHOT
from the specified remote repositories:
central (http://repo1.maven.org/maven2)
[INFO] ------------------------------------------------------------------------
[INFO] Trace
org.apache.maven.reactor.MavenExecutionException: Cannot find parent: com.training.killerapp:killerapp for project: null:killerapp-model:jar:null for project null:killerapp-model:jar:null
at org.apache.maven.DefaultMaven.getProjects(DefaultMaven.java:378)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:290)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:125)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:280)
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 the problems looks to be caused by the fact that the root POM has the following construct (that should be perfectly legal) in it:
<version>${killerappVersion}</version>
<properties>
<killerappVersion>1.0-SNAPSHOT</killerappVersion>
</properties>
If i substitute the version tag in the root POM with the following everything works with all versions.
<version>1.0-SNAPSHOT</version>
I was not able to find anywhere in the doc that ${x} substitution is no longer legal in </version> tag, so i think this is a regression from 2.0.3.
Btw, all the test were done with clean local repository.
Attachments
Issue Links
- is related to
-
MNG-624 automatic parent versioning
- Closed