Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsp 如何使用Maven War插件在战争之间重用战争资源_Jsp_Maven_Reusability_Jspinclude - Fatal编程技术网

Jsp 如何使用Maven War插件在战争之间重用战争资源

Jsp 如何使用Maven War插件在战争之间重用战争资源,jsp,maven,reusability,jspinclude,Jsp,Maven,Reusability,Jspinclude,在JavaEE环境下,我构建了一个包含几个JSP文件的网页。 假设包含的JSP之一是header.JSP。可以与Stackoverflow使用的非常相似,显示有关用户的信息、链接等。此JSP链接到java控制器以获取用户信息,并且是我的WAR文件的一部分,包括所有web应用程序 为了开发它,我使用Eclipse,为了构建和打包它,我使用Maven 现在我需要构建一个新的webApplication(也就是一个新的war),并且我希望重用头部 我假装的是: 不要重复代码 两个WAR都使用一个版本

在JavaEE环境下,我构建了一个包含几个JSP文件的网页。 假设包含的JSP之一是header.JSP。可以与Stackoverflow使用的非常相似,显示有关用户的信息、链接等。此JSP链接到java控制器以获取用户信息,并且是我的WAR文件的一部分,包括所有web应用程序

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

现在我需要构建一个新的webApplication(也就是一个新的war),并且我希望重用头部

我假装的是:

  • 不要重复代码
  • 两个WAR都使用一个版本的头代码
因此,问题是:

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

为您处理WAR文件打包的插件提供了解决此问题的方法。您已经在使用WAR插件,只需将项目类型设置为“WAR”;maven将此作为构建项目的线索,包括使用WAR插件进行包阶段绑定


覆盖层的工作方式是,您的WAR文件将另一个WAR项目声明为依赖项,就像您需要在jar文件上删除依赖项一样。当WAR插件的包mojo启动时,它将看到这种对另一个WAR的依赖,并将您的新WAR构建为两者的组合。注意,如果文件在两次战争中都存在,则不会合并文件;一个简单地凌驾于另一个之上。你可以配置插件来选择使用哪一个;默认情况下,获胜的是当前项目的文件。还要注意的是,如果你愿意,你可以依靠不止一场战争。

我不知道如何用Maven实现这一点,但基本上你需要让你的Maven东西符合这个密切相关的问题中所回答的相同项目结构:这真的很有用!谢谢!!你能举个例子吗?@JohnS很抱歉在你身上掉了一个指向文档的链接。不过,这个链接上的示例非常好,至少与我的概念性答案结合在一起。