一尘不染

如何使用Maven War Plugin在战争之间重用战争资源

jsp

在Java EE环境下,我建立了一个包含几个JSP文件的网页。可以说,其中包含的JSP之一是 header.jsp
。可以非常类似于Stackoverflow使用的那种,显示有关用户,链接等的信息。此JSP链接到Java控制器以获取用户信息,并且是我的WAR文件(包括所有Web应用程序)的一部分。

为了开发它,我使用了Eclipse,并使用Maven构建和打包了它。

现在,我需要构建一个新的webApplication(这样的新战争),并且我想重用头文件。

我假装的是:

  • 不要重复代码
  • 两次大战都使用标头代码的一个版本

所以问题是:

有办法避免将两个文件(header.jsp和controller.java)从旧项目复制粘贴到新项目吗?


阅读 233

收藏
2020-06-08

共1个答案

一尘不染

Maven的WAR插件,这是插件为你处理一个WAR文件的包装,提供“覆盖”机制来解决正是这个问题。您只需将项目的类型设为“
WAR”,就已经在使用WAR插件;maven使用它作为如何构建项目的线索,包括将WAR插件用于软件包阶段绑定。

叠加层的工作方式是,您的WAR文件将另一个WAR项目声明为依赖项,就像您需要对所需要的jar文件进行依赖依赖。当WAR插件的软件包mojo触发时,它将看到对另一个WAR的依赖关系,并结合两者构建新的战争。注意,如果两个WARS中都存在文件,则不会合并文件;一个简单地覆盖另一个。您可以配置插件以选择使用哪个插件。默认情况下,胜出的是当前项目的文件。另请注意,如果您愿意,您可以不仅仅依靠一场战争。

2020-06-08