标签:
在做网校的时候,经常会在控制台会报出方法区的内存溢出,在网上找的方法,无非都是在tomcat的bin/catalina.bat文件中
设置jvm的堆的大小和方法区的大小,但是通过eclipse启动tomcat之后,没过多久就又会报方法区内存溢出。
刚开始的时候,还没有想起使用jdk自带的jvm监控工具(jconsole.exe)去查看jvm各内存区域的大小,所以以为通过在catalina.bat
中的配置应该生效了,但是还是内存溢出,实在是头痛。。。。
通过在bin/catalina.bat文件中的“rem ----- Execute The Requested Command -”这个后面增加了下面的语句
set JAVA_OPTS=%JAVA_OPTS% -Xms256m -Xmx1024m -XX:PermSize=256M -XX:MaxNewSize=256m -XX:MaxPermSize=512m
这个通过tomcat的startup.bat来启动时,是有效的。但是通过eclipse来启动tomcat,却不会生效。。
通过eclipse来启动tomcat需要在eclipse来设置tomcat的jvm参数,具体位置:
具体的参数代表的意思,参开jvm的参数说明。。设置之后,启动tomcat,在jconsole.exe中可以看到,设置生效了。。。
问题解决。
关于jvm的OutOfMemory:PermGen space异常的解决
标签:
原文地址:http://www.cnblogs.com/wangliyue/p/5479138.html