码迷,mamicode.com
首页 > 编程语言 > 详细

异常处理系列:java.lang.OutOfMemoryError: PermGen space

时间:2014-09-02 22:56:05      阅读:259      评论:0      收藏:0      [点我收藏+]

标签:异常处理   异常   

今天帮同学解决他的Tomcat启动的问题,报出了一个OutOfMemoryError的异常,然后就搜啊搜的,突然发现特别有趣。

先不扯淡了,先说解决办法:

一看到这个就知道是内存满了。所以要把Tomcat的内存池加大一点。

修改如下: 
1. window-->Preferences,然后直接在搜索的那个框里边写上“tomcat”,会出现如下的界面:
 bubuko.com,布布扣

2. 选中你安装的tomcat版本,选中下面的JDK,在右边的 
   Optional Java VM arguments 文本框中输入: 
   -Xmx256M -Xms256M -XX:MaxPermSize=256m 

bubuko.com,布布扣
然后,点击最下边的Apply,然后点击OK


下边扯淡两句吧:

先解释下什么是PermGen space 

PermGen space的全称是Permanent Generation space,是指内存的永久保存区域,这一部分用于存放Class和Meta的信息,Class在被 Load的时候被放入PermGen space区域,它和存放Instance的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对PermGen space进行清理,所以如果你的APP会LOAD很多CLASS的话,就很可能出现PermGen space错误。 

注意红色部分,如果加载的class太多就可能产生这个问题。  
异常:java.lang.OutOfMemoryError: PermGen space 

所以可能的原因有: 
加载了太多的class 
加载了太多的jar 
重复加载了太多的jar 

异常处理系列:java.lang.OutOfMemoryError: PermGen space

标签:异常处理   异常   

原文地址:http://blog.csdn.net/u010800530/article/details/39012949

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!