PermGen space的全称是Permanent Generation space,是指内存的永久保存区域,这一部分用于存放Class和Meta的信息,Class在被 Load的时候被放入PermGen space区域,它和存放Instance的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对PermGen space进行清理,所以如果你的APP会LOAD很多CLASS的话,就很可能出现PermGen space错误。
工具/原料
-
安装有windows操作系统的电脑一台
方法/步骤
-
1
网上有很多资料说:
-
1在tomcat/bin目录下的catalina.bat,编辑它修改这行set JAVA_OPTS=-Xms1024m -Xmx1024m -XX:PermSize=512M -XX:MaxPermSize=512m
参数 描述
-Xms JVM初始化堆的大小
-Xmx JVM堆的最大值
可是我们发现有些朋友(安装版)根本没有TOMCAT_HOME/bin/catalina.bat该文件。
因为:Tomact安装有两种方式,
一种是绿色版:用上面的方法可以解决。
一种是安装版: 像平常安装软件时安装。安装版是没有该文件的。下面介绍安装版的两种方法。
-
2
安装版解决方法1:
Myeclipse->Window-->preferences->tomcat(找到你运行的tomcat版本)
->JDK -> 在Optional Java VM arguments中填入扩充缓冲区参数.
-
3
-
4
输入:-Xms256M -Xmx512M -XX:PermSize=256m -XX:MaxPermSize=512m
也可以设置更大一点:set JAVA_OPTS=-Xms1024m -Xmx1024m -XX:PermSize=512M -XX:MaxPermSize=512m
END
方法/步骤2
注意事项
-
此方法只适用于windows操作系统
本文深入探讨了PermGenSpace(永久代)的概念,解释其在JVM内存管理中的角色,尤其是在Class和Meta信息存储方面。针对PermGenSpace错误,提供了详细的解决策略,包括调整Tomcat的JVM参数,适用于不同版本和安装方式的Tomcat。






854

被折叠的 条评论
为什么被折叠?



