Для того чтобы можно было легче писать и настраивать проект в 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>