PermGen space的全称是Permanent Generation space,是指内存的永久保存区域。OutOfMemoryError: PermGen ; 这一区域用于存放Class和Meta的信息。
产生原因:
Class在被加载的时候被放入PermGen space区域,它和和存放Instance的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对PermGen space进行清理,所以如果应用会加载很多class的话,就很可能出现PermGen space错误。
这种错误常见在web服务器对JSP进行pre compile的时候。
解决方法:就是加大将PermGen space区域的内存,也就是把MaxPermSize的大小调大如下: -Xms256m -Xmx256m -XX:MaxNewSize=256m -XX:MaxPermSize=256m;
如果是tomcat报这个错:
在# OS specific support. $var _must_ be set to either true or false.上面加入以下行: JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=128M";
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-26 23:29:28