单个文件的Maven资源过滤

Dom*_*Mar 26 xml spring maven

在pom.xml中我定义了:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <version>2.6</version>
    <configuration>
        <nonFilteredFileExtensions>
            <nonFilteredFileExtension>xml</nonFilteredFileExtension>
        </nonFilteredFileExtensions>
        <encoding>UTF-8</encoding>
    </configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)

<resources>
    <resource>
        <filtering>true</filtering>
        <directory>src/main/resources</directory>
    </resource>
</resources>
Run Code Online (Sandbox Code Playgroud)

现在问题是没有过滤所有xml文件.有没有可能的方法来过滤单个xml文件?

Dom*_*Mar 22

我不知道为什么Gabor的解决方案不起作用,但我设法解决了这个问题:

首先,我删除了nonFilteredFileExtension标记:

<nonFilteredFileExtension>xml</nonFilteredFileExtension>
Run Code Online (Sandbox Code Playgroud)

然后以这种方式修改我的资源:

<resource>
    <directory>src/main/resources</directory>
    <filtering>true</filtering>
    <includes>
        <include>**/myxml.xml</include>
    </includes>
</resource>

<resource>
    <directory>src/main/resources</directory>
    <filtering>false</filtering>
    <includes>
        <include>**/*.xml</include>
    </includes>
</resource>
Run Code Online (Sandbox Code Playgroud)

现在我的单个xml文件被过滤,而其他文件被过滤器保持不变.


Gáb*_*ták 11

对于您可以使用的资源标记包含和排除.只需定义一个掩码,它只适合您的单个文件.请参阅http://maven.apache.org/plugins/maven-resources-plugin/examples/filter.html

样品:

<project>
  ...
  <build>
    ...
    <resources>
      <resource>
        <directory>src/main/resources</directory>
        <filtering>true</filtering>
        <includes>
          <include>**/yoursinglefile.xml</include>
        </includes>
      </resource>
      ...
    </resources>
    ...
  </build>
  ...
</project>
Run Code Online (Sandbox Code Playgroud)


K. *_*Gol 9

这样的东西对我来说很好:

    <resources>
        <resource>
            <directory>src/test/resources</directory>
            <filtering>false</filtering>
        </resource>
        <resource>
            <directory>src/test/resources</directory>
            <filtering>true</filtering>
            <includes>
                <include>my_file.xml</include>
            </includes>
        </resource>
    </resources>
Run Code Online (Sandbox Code Playgroud)

这个文档帮助我: Apache Maven - 过滤