tomcat6如何部署多个基于struts2 (struts2-core-2.1.8.jar)-spring-hibernate整合的项目呢?
发布成功后,没点几下:java.lang.OutOfMemoryError:PermGenspacetomcat的内存配置:initialmemory:216M,Maxi...
发布成功后,没点几下:
java.lang.OutOfMemoryError: PermGen space
tomcat的内存配置:initial memory:216M, Maxinum memory:800M
内存配置,已足够,是什么原因呢?
jar包冲突?
网络说:"响问题的关键就是:xerces-2.4.0.jar和xercesImpl-2.6.2.jar这两个包,删除后重启Tomcat就Ok",我的lib下面没有这两个东西!!
我认为应该是里面有jar包冲突,但就是不知道,具体是哪一个出错。我把两个项目的lib下面的jar包都提取出来,放在tomcat的lib下面,运行一会儿,又内存溢出了!!
问题解决了:
PermGen space:-XX:PermSize=64M -XX:MaxPermSize=128m 修改它。发布多个SSH项目Java永久生成对象,要耗掉很多的内存,原本以为是jar冲突倒置,原来是PermSize默认太小的缘故。最好把项目公用的jar包提取出来放到tomcat lib下面。
注:PermSize和MaxPermSize指明虚拟机为java永久生成对象(Permanate generation)如,class对象、方法对象这些可反射(reflective)对象分配内存限制,这些内存不包括在Heap(堆内存)区之中。 展开
java.lang.OutOfMemoryError: PermGen space
tomcat的内存配置:initial memory:216M, Maxinum memory:800M
内存配置,已足够,是什么原因呢?
jar包冲突?
网络说:"响问题的关键就是:xerces-2.4.0.jar和xercesImpl-2.6.2.jar这两个包,删除后重启Tomcat就Ok",我的lib下面没有这两个东西!!
我认为应该是里面有jar包冲突,但就是不知道,具体是哪一个出错。我把两个项目的lib下面的jar包都提取出来,放在tomcat的lib下面,运行一会儿,又内存溢出了!!
问题解决了:
PermGen space:-XX:PermSize=64M -XX:MaxPermSize=128m 修改它。发布多个SSH项目Java永久生成对象,要耗掉很多的内存,原本以为是jar冲突倒置,原来是PermSize默认太小的缘故。最好把项目公用的jar包提取出来放到tomcat lib下面。
注:PermSize和MaxPermSize指明虚拟机为java永久生成对象(Permanate generation)如,class对象、方法对象这些可反射(reflective)对象分配内存限制,这些内存不包括在Heap(堆内存)区之中。 展开
3个回答
展开全部
有可能是自动加载进去的,或者是你创建的时候版本和包的版本不一致,这个也有可能哦!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是那里没有
更多追问追答
追问
我找了,项目下面的lib,tomcat下面的lib,都没有(xerces-2.4.0.jar和xercesImpl-2.6.2.jar),,网络上有人说删除 掉它们,说明我还有其它的jar包冲突!!
追答
现在解决了没有
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询