原因:当Java虚拟机需要加载定义的一个新class,但是在持久代中没有足够的空间就会抛出‘Java.Lang.OutOfMemoryError: PermGen Space’异常。
默认分配给持久代的大小在server模式下是64MB ,在client模式下是32MB 
方法1:
在ide中启动项目的时候在debug Configurations的Vm arguments参数设置中 添加-Xms512m -Xmx1024m -XX:PermSize=128M -XX:MaxPermSize=256M等大小设置
方法2:
首选项中installed JREs 的jdk(如1.7)点edit 设置Default VM arguments  添加:-XX:PermSize=128M -XX:MaxPermSize=256M
方法3、
如果不是在ide中,而是在tomcat中,则
在文件{tomcat_home}/bin/catalina.sh的前面或是catalina.bat(看系统),可增加如下设置:
JAVA_OPTS='-Xms512m -Xmx512m -Xss1024k -XX:MaxNewSize=256M -XX:MaxPermSize=256M'

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐