In POM we can have ${project.version} or special variables like ${project.basedir}.
This example at the very end of Introduction to the POM accesses project.properties.mavenVersion by just writing ${mavenVersion}.
Why is that sufficient? I thought we need ${project.properties.mavenVersion}.
In general, when are we allowed to access a variable without fully qualifying it using${project.xxx.variableName}?
<project>
...
<properties>
<mavenVersion>2.1</mavenVersion> <----- variable defined here
</properties>
<dependencies>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-artifact</artifactId>
<version>${mavenVersion}</version> <----- variable accessed here
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-project</artifactId>
<version>${mavenVersion}</version> <----- and here
</dependency>
</dependencies>
...
</project>
project. is the recommended form to use for all project variables except user defined (<properties> section) ones.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With