Казни программы плагинов Maven и фильтрация в мультимодуле
-
09-10-2019 - |
Вопрос
Я использую Maven, чтобы построить мультимодульный проект.
В одном проекте я выполнял Maven-War-Plugin четыре раза, чтобы фильтровать некоторые свойства в каждом исполнении. Как отдельный проект работает хорошо.
Но когда я строю мультимодуль, из «родителя» его выполняется в четыре раза, но ни один из них не фильтрует свойства.
Спасибо вам всем!
Вот фрагмент моего pom.xml:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>net.my</groupId>
<artifactId>my-project</artifactId>
<packaging>war</packaging>
<name>myProject</name>
<version>0.0.1</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.0</version>
<executions>
<execution>
<id>list</id>
<phase>package</phase>
<goals>
<goal>war</goal>
</goals>
<configuration>
<warName>myProj-list.war</warName>
<webResources>
<resource>
<directory>src/main/webapp</directory>
<filtering>true</filtering>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</webResources>
<filtering>true</filtering>
<filters>
<filter>src/main/filters/list.properties</filter>
</filters>
</configuration>
</execution>
...
<!-- more executions -->
</execution>
</executions>
<configuration>
<webResources>
<resource>
<directory>src/main/webapp</directory>
<filtering>true</filtering>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</webResources>
<filters>
<filter>src/main/filters/locator.properties</filter>
</filters>
</configuration>
</plugin>
</plugins>
</build>
Решение
Но когда я строю мультимодуль, из «родителя» его выполняется в четыре раза, но ни один из них не фильтрует свойства.
Похоже, сложная настройка ... В любом случае, вы уверены, что содержание src/main/webapp
делает нет Переопределить фильтрованный контент? Бег Maven с -X
может помочь отладить то, что происходит.
Мое предложение было бы остановить злоупотребление злоупотребление то webResources
элемент (который следует использовать для Внешний Веб-ресурсы) и переместить контент, который должен быть отфильтрован снаружи src/main/webapp
.