Exception in thread “main”:java.lang.OutOfMemoryError:PermGen space【面试题详解】

今天爱分享给大家带来Exception in thread “main”:java.lang.OutOfMemoryError:PermGen space【面试题详解】,希望能够帮助到大家。
PermGen space 的全称是 Permanent Generation space,是指内存的永久保存区域, 这
块内存主要是被 JVM 存放 Class 和 Meta 信息的,Class 在被 Loader 时就会被放到 PermGen
space 中, 它和存放类实例(Instance)的 Heap 区域不同,GC(Garbage Collection)不会在主程序
运行期对 PermGen space 进行清理,所以如果你的应用中有很多 CLASS 的话,就很可能出现
PermGen space 错误, 这种错误常见在 web 服务器对 JSP 进行 pre compile 的时候。如果你的
WEB APP 下都用了大量的第三方 jar, 其大小超过了 jvm 默认的大小(4M)那么就会产生此错
误信息了。
解决方法: 手动设置 MaxPermSize 大小修改 TOMCAT_HOME/bin/catalina.sh 在“echo
“Using CATALINA_BASE: $CATALINA_BASE””上面加入以下行: JAVA_OPTS=”-server
-XX:PermSize=64M -XX:MaxPermSize=128m

人已赞赏
Java

请简单描述下面几个参数的意思和错误的原因。-xms; 初始堆大小-xmx; 最大堆大小-XX:PermSize;非堆区初始内存分配大小Exception in thread "main":java.lang.OutOfMemoryError:Java heap space【面试题详解】

2020-12-7 17:11:22

Java

Web 页面跳转的两种方式及其区别?【面试题详解】

2020-12-7 17:12:16

'); })();