【发布时间】:2010-08-24 15:36:41
【问题描述】:
我正在尝试控制将哪些文件放入由mvn package 目标创建的 WAR 包中。具体来说,我想从每个包的默认 src/main/resources 文件夹中排除一些文件(我正在尝试为不同的环境进行构建/包)。
我尝试使用 maven-war-plugin 但失败了。如果我添加此配置(用于测试):
<webResources>
<resource>
<directory>src/main/resources</directory>
<targetPath>WEB-INF/classes</targetPath>
<excludes>
<exclude>*.xml</exclude>
</excludes>
</resource>
</webResources>
...my WEB-INF/classes 仍将包含 XML 文件。这是因为webResources 参数似乎重复了复制过程(上面的配置实际上有效,文件没有被复制......但是它们被复制到一些其他进程中)。
Maven-war-plugin documentation 状态:
所有 Maven 2 项目的默认资源目录是 src/main/resources,最终会在 WAR 中的 target/classes 和 WEB-INF/classes 中。目录结构将在进程中保留。
WAR 插件还能够通过 webResources 参数包含在默认资源目录中找不到的资源。
这有点令人困惑。是不是意味着:
-
webResources参数是 maven-war-plugin 中的一项功能,它允许仅从src/main/resources文件夹之外包含文件?如果是这样,我们如何从src/main/resources内部更改复制的文件? -
webResources参数是 maven-war-plugin 中的一项功能,它允许从外部src/main/resources文件夹中包含文件也?如果是这样,如何配置它来执行此操作? - 其他选项?
【问题讨论】:
-
您是尝试使用相同的 mvn 包为不同的环境构建还是通过使用配置文件来控制它?
标签: configuration maven-2 release-builds