是否可以将2个web.xml与Maven overlay合并

aur*_*rya 7 overlays maven maven-war-plugin

我在战争项目中定义了一个Web应用程序"A".我创建了另一个Web应用程序"B",它使用叠加层导入"A"的全部内容.

应用程序"B"的文件web.xml与应用程序"A"相同,但附加侦听器除外.因此,B的web.xml包含大量带有A的重复内容.

问题是: 是否有可能告诉maven-war-plugin合并A和B的web.xml,而不是用B的web.xml替换A的web.xml?

mic*_*ldo 0

对于您的情况 - 额外的听众 - 有一个简单的解决方案。如果您的应用程序是Servlet 3.0或更高版本,您可以使用注释注册B监听器:

@WebListener
public class BListener implements ServletContextListener {

    public void contextInitialized(ServletContextEvent sce) {
        System.out.println("Started BListener");
    }
Run Code Online (Sandbox Code Playgroud)

如果B的影响比额外的监听器更复杂,你可以考虑web-fragment(需要Servlet 3.0)