我正在尝试控制将哪些文件放入由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>
...myWEB-INF/classes
仍将包含 XML 文件。这是因为webResources
参数似乎重复了复制过程(上面的配置实际上有效,文件没有被复制......但它们在其他一些过程中被复制)。
所有 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
文件夹中?如果是这样,如何配置它来做到这一点? - 其他选择?