Для того чтобы можно было легче писать и настраивать проект в pom.xml можно использовать свойства. Можно рассматривать свойства просто как переменные.
Есть:
Давайте начнём с самого простого объявим свойства и сами будем их использовать. Свойства можно объявить и использовать так:
<properties>
<temp.directory>/tmp</temp.directory>
</properties>
<build>
<outputDirectory>${temp.directory}<outputDirectory>
Свойства помогают избавиться от дублирования информации В примере
<properties>
<jetty.version>6.1.25</jetty.version>
</properties>
<dependency>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty</artifactId>
<version>${jetty.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-util</artifactId>
<version>${jetty.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-management</artifactId>
<version>${jetty.version}</version>
<scope>provided</scope>
</dependency>
Встроенные свойства
Свойства проекта На все свойства в pom.xml, можно сослаться с помощью префиксов project. или pom. Ниже приведён пример некоторых часто используемых элементов.
Настройки пользователя Можно получить доступ к свойствам settings.xml с помощью префикса settings. ,например:
Переменные окружения Для доступа к переменным окружения используйте префикс env. Примеры:
Системные свойства System.properties Доступ к системным свойствам возможен напрямую. Для просмотра переменных можно воспользоваться maven-echo-plugin.
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>maven-properties-plugin</artifactId>
<version>1.0-SNAPSHOT</version>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>read-project-properties</goal>
</goals>
<configuration>
<files>
<file>src/config/app.properties</file>
</files>
</configuration>
</execution>
</executions>
</plugin>