如何在Maven中复制Web资源



我正在使用maven作为构建工具。我有一个网络应用程序。我想创建另一个 Web 应用程序,第一个 Web 应用程序中的所有 xhtml 页面都应该复制到新应用程序中。但也有一些例外。如果文件名为登录名的文件.xhtml同时存在于旧应用程序和新应用程序中,则应以新应用程序中的文件为准。在使用一些排除规则的 maven war 插件中,我可以让它工作(它实际上处于这种状态),但我正在寻找一个更干净的解决方案,以便每次在两个应用程序中引入同名的新文件时,我不必硬编码 POM 中的排除规则。我还尝试使用依赖项 - 即新应用程序依赖于旧应用程序的战争,但时间戳正在获胜。

您可以使用 Maven 叠加来完成工作

http://maven.apache.org/plugins/maven-war-plugin/overlays.html

一个WAR文件的叠加,只是一个使用另一个的Maven项目 项目的 WAR 输出作为依赖项,而不是项目的 JAR。 生成覆盖项目时,基础项目的 WAR 文件 分解,并将叠加项目中的文件添加到其中。如果 覆盖项目具有与 中的文件具有相同路径和名称的文件 底层 战争 它将取代它。

您也可以按照此分步指南进行操作。

最新更新