我正在使用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.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top