Maven War插件执行和在多模块项目中进行过滤
-
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
做 不是 覆盖过滤的内容?跑步 -X
可能有助于调试正在发生的事情。
我的建议是停止虐待 虐待 这 webResources
元素(应该用于 外部的 Web资源)并移动需要在外面过滤的内容 src/main/webapp
.
不隶属于 StackOverflow