javaweb项目在tomcat发布的时候遇到了PermGen space错误,java.lang.OutOfMemoryError: PermGen space,这种错误已经不是第一次遇到了,这次果断记录一下这次错误的解决方案:
分析一下这个错的由来:
PermGen space的全称是Permanent Generation space,是指内存的永久保存区域.内存中的这个区域是用来存放class和meta信息的,Class在被jvm load的时候,class信息会被放入该区域.它不同于存放实例的Heap区域,GC不会在主程序运行期间对PermGen space进行清理.
如果我们的工程中有很多类文件或者加载了很多jar包(jar包中的Class信息会被加载到PermGen space)的话,就很可能出现java.lang.OutOfMemoryError: PermGen space这个问题.
通过上面的分析就不难得出解决方法,加大PermGen space即可.在tomcat的catalina.bat的JAVA_OPTS 变量前设置JAVA_OPTS=” -XX:PermSize=97m -XX:MaxPermSize=256m″
转载请注明来源网站:blog.ytso.com谢谢!
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/7034.html