服务器之家

服务器之家 > 正文

解决Eclipse Tomcat OutOfMemoryError:PermGen space的问题

时间:2021-06-20 15:14     来源/作者:执笔记忆的空白

permgen space的全称是permanent generation space,是指内存的永久保存区域outofmemoryerror: permgen space。从文字上看就是内存溢出,解决方法是加大内存。为什么会内存溢出,这是由于这块内存主要是被jvm存放classmeta信息的,class在被load的时候被放入permgen space区域,它和存放instanceheap区域不同,gc(garbage collection)不会在主程序运行期对permgen space进行清理,所以如果你的app会load很多class的话,就很可能出现permgen space错误。这种错误常见在web服务器对jsp进行pre compile的时候。如果你的web app下都用了大量的第三方jar, 其大小超过了jvm默认的大小(4m)那么就会产生此错误信息了。

问题背景:

tomcat启动了太多的项目,或者有的项目引用了太多的jar包,或者反射生成了太多的类,异或有太多的常量池,就有可能会报java.lang.outofmemoryerror: permgen space的错误,我们知道可以通过jvm参数 -xx:maxpermsize=256m来配置这部分堆内存的大小。 

eclipse中如何配置tomcat的内存大小呢?

手动设置maxpermsize大小

首先需要双击tomcat server,如下图所示:

解决Eclipse Tomcat OutOfMemoryError:PermGen space的问题

双击上图后会出现,tomcat配置的界面:

解决Eclipse Tomcat OutOfMemoryError:PermGen space的问题

然后再点击上图的,红色矩形框的链接,会弹出tomcat参数配置的节面,要选择arguments参数框:

解决Eclipse Tomcat OutOfMemoryError:PermGen space的问题

如上图在vm arguments文本框内设置 -xx:maxpermsize=256m的值即可, 当然此处还可以添加其他jvm参数,比如最大内存,最小内存等。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。如果你想了解更多相关内容请查看下面相关链接

原文链接:https://blog.csdn.net/moneyshi/article/details/51007109

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
2021德云社封箱演出完整版 2021年德云社封箱演出在线看
2021德云社封箱演出完整版 2021年德云社封箱演出在线看 2021-03-15
返回顶部