http://maven.apache.org/pom.html#Properties says property \"values are accessible anywhere within a POM\".
Should this read \"are accessible in most places
Property substitution is not allowed in /project/parent/(groupId|artifactId|version)
or in /project/(groupId|artifactId|version)
by design in Maven 2.x.
So the rules are:
project/version
element.project/parent/version
element of children.${myversion}
property${project.groupId}
and ${project.version}
for inter module dependencies.You'll find an infinite number of threads on this topic on the maven user list (see for example Pom Parent Version Properties) and I'll just say that any attempt to workaround the above rules is wrong and doesn't work.
Version less parent
will be allowed in Maven 3.1.