经过一段时间的努力,这个问题终于解决了,我正在写这篇对我有用的文章,希望它能对类似情况的其他人有所帮助。
在尝试logback的同时,xml提供了有关实际错误的更多信息
SEVERE: A child container failed during startjava.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: PermGen spaceat java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252)at java.util.concurrent.FutureTask.get(FutureTask.java:111)at org.apache.catalina.core.Containerbase.startInternal(Containerbase.java:1130)at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:293)at org.apache.catalina.util.Lifecyclebase.start(Lifecyclebase.java:150)
看起来Web应用程序因hibernate,弹簧和其他库而沉重,存在permgen空间问题,因此我将VM参数添加到服务器,如下所示
-XX:MaxPermSize=128m
双击Server并打开Launch Configuration在VM arguments部分添加以上参数,这确实神奇。
我已经还原了为appServlet提供唯一的servlet名称的早期更改,并删除了唯一的webAppRootKey作为上下文参数,它仍然可以正常工作。
综上所述,只要我们将XX:MaxPermSize =
128m参数设置为服务器启动,就可以在一台tomcat服务器上运行从同一Maven快速入门创建的多个webapp,而不会出现任何问题。



