Фильтрация исходного кода все еще была сложной несколько месяцев назад, но теперь в проекте MOJO есть стандартный плагин.Теперь вы можете сделать это с помощью классического объявления плагина.
Чтобы отфильтровать исходный код (например, когда вы хотите иметь константу в своем Java-коде для получения версии проекта или artifactId), вы должны теперьиспользуйте плагин templating-maven-plugin .
. Поместите свой код, который должен фильтроваться во время сборки, в src/main/java-templates
, как обычно в src/main/java
длянефильтрованные источники.Используйте ${project.version}
или любое другое свойство, поступающее из POM в вашем коде.
Просто введите что-то вроде:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>templating-maven-plugin</artifactId>
<version>1.0-alpha-3</version> <!-- Be sure to use the last version. Check on the website's plugin -->
<executions>
<execution>
<id>filter-src</id>
<goals>
<goal>filter-sources</goal>
</goals>
</execution>
</executions>
</plugin>
Готово:-).Код, который вы помещаете в src/main/java-templates
, фильтруется и добавляется в путь к классам.
Использование очень простое (см. Пример здесь ).
Это гораздо лучше относится к идее соглашения о конфигурации Maven.В основном вы заменяете десятки строк XML и некоторые хаки, чтобы что-то сделать чисто.
Примечание: это отлично работает с Eclipse, например.