Maven src/main/resources未筛选

Maven src/main/resources未筛选,maven,filtering,war,Maven,Filtering,War,当我执行jetty:run时,生成的war过滤器将正确过滤。 当我进行打包时…导致的战争无法正确过滤。 我做错了什么 <build> <resources> <resource> <directory>src/main/resources</directory> <filtering>true</filtering>

当我执行jetty:run时,生成的war过滤器将正确过滤。 当我进行打包时…导致的战争无法正确过滤。 我做错了什么

  <build>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
            <includes>
                <include>**/*.properties</include>
                <include>**/*.xml</include>
            </includes>
        </resource>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>false</filtering>
            <excludes>
                <exclude>**/*.properties</exclude>
                <exclude>**/*.xml</exclude>
            </excludes>
        </resource>
    </resources>
    <finalName>MyWarName</finalName>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.3.1</version>
            <configuration>
                <source>${jdk.source}</source>
                <target>${jdk.target}</target>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.mortbay.jetty</groupId>
            <artifactId>jetty-maven-plugin</artifactId>
            <configuration>
                <contextXml>${basedir}/src/main/webapp/WEB-INF/jetty-context.xml</contextXml>
            </configuration>

        </plugin>
    </plugins>
</build>

src/main/resources
真的
**/*.物业
**/*.xml
src/main/resources
假的
**/*.物业
**/*.xml
MyWarName
org.apache.maven.plugins
maven编译器插件
2.3.1
${jdk.source}
${jdk.target}
org.mortbay.jetty
jetty maven插件
${basedir}/src/main/webapp/WEB-INF/jetty-context.xml

您需要添加未被替换的属性:

系统属性

项目属性:

<project>
...
<properties>
    <the_name>value</value>
</properties>
...
</project>

...
价值
...
使用.properties文件对生成进行筛选:

<project>
...
<build>
    <filters>
        <filter>the_values.properties</filter>
    </filters>
</build>
...
</project>

...
_值。属性
...

为什么要包含并排除相同的资源?我不是说第一个块包含过滤后的资源,第二个块包含未过滤的资源。为了简化,您可以删除第二个块,看看是否有帮助。这对你有帮助吗?在我看来,第一个块包括用于过滤的文件;第二个块是排除未过滤的文件,如果您试图从war中排除文件,则可以使用maven war插件: