嵌入式Tomcat调用WebApplicationInitializer两次



我使用嵌入式tomcat通过maven-appassembly插件部署我的应用程序的war文件。我的应用程序是在Spring中构建的,它使用WebApplicationInitializer而不是web.xml。该应用程序部署在嵌入式tomcat中,但是当我将jamon.war(用于插入(添加到tomcat实例时,我的应用程序的WebApplicationInitializer实现会被再次调用。

我花了将近8-9个小时来解决这个问题,但无法解决,任何帮助都将不胜感激。创建Tomcat实例并加载两个war的代码如下所述。

Tomcat tomcat = new Tomcat();
tomcat.setHostname("localhost");
tomcat.setPort(8080);
File appWar = new File("/home/myApp.war");
Context context = tomcat.addWebapp("", appWar.getAbsolutePath()); // This is my Spring app.
File jamonWar = new File("/home/jamon-war-2.4.war");
Context context = tomcat.addWebapp("", jamonWar.getAbsolutePath());
tomcat.start();

这个问题得到了解决,我错误地在maven汇编插件pom.xml中添加了jar文件(包含WebApplicationInitializer实现类(,然后将其添加到dist/repo目录下,这就是为什么该类被加载了两次的原因。

相关内容

  • 没有找到相关文章

最新更新