启动tomcat出现OutOfMemory

linyfei 2012-01-30 10:08:17
先交待一下,我的运行环境是linux,我在一个tomcat下部署了四个程序,其中一个程序的class比较多,通过在tomcat下进行link的方式连接war包进行部署;
在启动该tomcat时,我的后台抛出以下异常,但是归档tomcat的logs消息后,重启成功无该异常:
Dec 31, 2011 4:25:35 PM org.apache.catalina.startup.HostConfig checkResources
INFO: Undeploying context [/udb_ws]
Dec 31, 2011 4:25:48 PM org.apache.catalina.startup.HostConfig checkResources
INFO: Undeploying context [/portal]
Dec 31, 2011 4:25:49 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive udb_ws.war
Dec 31, 2011 4:25:53 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(/opt/udbs/tomcat01/webapps/udb_ws/WEB-INF/lib/servlet-api.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
Dec 31, 2011 4:29:57 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive portal.war
Dec 31, 2011 4:29:59 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(/opt/udbs/tomcat01/webapps/portal/WEB-INF/lib/servlet-api.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
Dec 31, 2011 4:38:32 PM org.apache.catalina.startup.HostConfig checkResources
INFO: Undeploying context [/udb_ws]
Dec 31, 2011 4:38:33 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive udb_ws.war
Dec 31, 2011 4:38:33 PM org.apache.catalina.startup.ContextConfig init
SEVERE: Exception fixing docBase: {0}
java.util.zip.ZipException: invalid LOC header (bad signature)
at java.util.zip.ZipFile.read(Native Method)
at java.util.zip.ZipFile.access$1200(ZipFile.java:29)
at java.util.zip.ZipFile$ZipFileInputStream.read(ZipFile.java:447)
at java.util.zip.ZipFile$1.fill(ZipFile.java:230)
at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:141)
at java.io.FilterInputStream.read(FilterInputStream.java:90)
at org.apache.catalina.startup.ExpandWar.expand(ExpandWar.java:316)
at org.apache.catalina.startup.ExpandWar.expand(ExpandWar.java:158)
at org.apache.catalina.startup.ContextConfig.fixDocBase(ContextConfig.java:883)
at org.apache.catalina.startup.ContextConfig.init(ContextConfig.java:1012)
at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:279)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.StandardContext.init(StandardContext.java:5398)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4177)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:526)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:850)
at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:724)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:493)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1274)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:296)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590)
at java.lang.Thread.run(Thread.java:619)
Dec 31, 2011 4:38:34 PM org.apache.catalina.core.StandardContext start
SEVERE: Error in dependencyCheck
java.util.zip.ZipException: invalid LOC header (bad signature)
at java.util.zip.ZipFile.read(Native Method)
at java.util.zip.ZipFile.access$1200(ZipFile.java:29)
at java.util.zip.ZipFile$ZipFileInputStream.read(ZipFile.java:447)
at java.util.zip.ZipFile$1.fill(ZipFile.java:230)
at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:141)
at java.io.FilterInputStream.read(FilterInputStream.java:116)
at java.io.PushbackInputStream.read(PushbackInputStream.java:169)
at java.util.zip.ZipInputStream.readFully(ZipInputStream.java:392)
at java.util.zip.ZipInputStream.readLOC(ZipInputStream.java:225)
at java.util.zip.ZipInputStream.getNextEntry(ZipInputStream.java:74)
at java.util.jar.JarInputStream.<init>(JarInputStream.java:58)
at java.util.jar.JarInputStream.<init>(JarInputStream.java:43)
at org.apache.catalina.util.ExtensionValidator.getManifest(ExtensionValidator.java:378)
at org.apache.catalina.util.ExtensionValidator.validateApplication(ExtensionValidator.java:189)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4258)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:526)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:850)
at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:724)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:493)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1274)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:296)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1337)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1601)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1610)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1590)
at java.lang.Thread.run(Thread.java:619)
Dec 31, 2011 4:38:34 PM org.apache.catalina.core.StandardContext start
SEVERE: Error getConfigured
Dec 31, 2011 4:38:34 PM org.apache.catalina.core.StandardContext start
SEVERE: Context [/udb_ws] startup failed due to previous errors
Dec 31, 2011 4:38:34 PM org.apache.catalina.core.StandardContext stop
INFO: Container org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/udb_ws] has not been started
Dec 31, 2011 4:38:44 PM org.apache.catalina.startup.HostConfig checkResources
INFO: Undeploying context [/udb_ws]
Dec 31, 2011 4:38:44 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive udb_ws.war
Dec 31, 2011 4:38:46 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(/opt/udbs/tomcat01/webapps/udb_ws/WEB-INF/lib/servlet-api.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
Dec 31, 2011 4:39:05 PM org.apache.catalina.startup.HostConfig deployWAR
SEVERE: Error deploying web application archive udb_ws.war
java.lang.OutOfMemoryError: PermGen space
Dec 31, 2011 4:40:22 PM org.apache.coyote.http11.Http11Processor process
SEVERE: Error processing request
java.lang.OutOfMemoryError: PermGen space
Dec 31, 2011 4:40:24 PM org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler process
SEVERE: Error reading request, ignored
java.lang.OutOfMemoryError: PermGen space
Dec 31, 2011 4:40:37 PM org.apache.coyote.http11.Http11Processor process
SEVERE: Error processing request
java.lang.OutOfMemoryError: PermGen space
Dec 31, 2011 4:40:39 PM org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler process
SEVERE: Error reading request, ignored
java.lang.OutOfMemoryError: PermGen space
Dec 31, 2011 4:40:52 PM org.apache.coyote.http11.Http11Processor process
SEVERE: Error processing request
java.lang.OutOfMemoryError: PermGen space
Dec 31, 2011 4:40:53 PM org.apache.coyote.http11.Http11Processor process
SEVERE: Error processing request
java.lang.OutOfMemoryError: PermGen space

在网上找了一些资料,暂时只能知道可能是我tomcat的peimsize不够造成,所以我去检查了tomcat的catalina.sh;
但是我在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面有以下行: JAVA_OPTS="-server -XX:PermSize=600M -XX:MaxPermSize=1600m"的配置,但是从tomcat的启动消息来看,这个配置似乎没生效,能帮忙解释下这是为什么吗?

另外有不有人知道什么命令,可以去查询到tomcat的内存使用情况?
或者对我贴出的异常有其他见解的,也可以提出;还望能尽快有答复,谢谢各位了!!!
...全文
198 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
linyfei 2012-02-14
  • 打赏
  • 举报
回复
没人回答?

4,436

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧