开发者

Maven - Exclude certain resource files into WAR from the default src/main/resources location

Currently, I wan开发者_C百科t to exclude some files from the default src/main/resources folder into my WAR when packaging

I tried using maven-war-plugin with the following configuration but failed.

<webResources>
  <resource>
    <directory>src/main/resources</directory>
    <targetPath>WEB-INF/classes</targetPath>
    <excludes>
      <exclude>*.xml</exclude>
    </excludes>
  </resource>
</webResources>

...WEB-INF/classes will still contain the XML files.

How to do so?


As pointed out in https://stackoverflow.com/a/2737635/722997, a quick way to exclude files from the WAR package is to exclude them in the build->resources section, like:

<build>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <excludes>
                <exclude>*.xml</exclude>
            </excludes>
        </resource>
    </resources>
    ...
</build>

Note: take into account that the following configuration will only affect default executions of Maven (WAR package, JAR package, ...), but not assemblies or other user configurations.


This is somewhat late to this question, but I was just trying to do the same thing, and have found that (with the maven-war-plugin 3.1.0 version), adding:

<packagingExcludes>WEB-INF/classes/*.xml</packagingExcludes>

to the configuration should do what was asked for (it worked for me to remove properties files we didn't want to distribute with the war file).


From the documentation of maven war plugin, you can include and exclude resources as follows:

...
        <configuration>
          <webResources>
            <resource>
              <!-- the default value is ** -->
              <includes>
                <include>**/pattern1</include>
                <include>*pattern2</include>
              <includes>
              <!-- there's no default value for this -->
              <excludes>
                <exclude>*pattern3/pattern3</exclude>
                <exclude>pattern4/pattern4</exclude>
              </excludes>
            </resource>
          </webResources>
        </configuration>
        ...

Are you following this and it still does not work? If so, can you post your pom snippet?

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜