Weblogic报出java.lang.OutOfMemoryError: PermGen space异常

一、myeclpise
 
 
方法一:在weblogic/common/bin/commEnv.sh中配置
  MEM_ARGS="-Xms32m -Xmx200m -XX:MaxPermSize=128m"
  -Xms:内存初始值
  -Xmx:内存最大值(不要超过内存的80%)
  MaxPermSize:PermGen(Class和Meta存放区域)区域内存最大值。
  可调整为:
  MEM_ARGS="-Xms512m -Xmx512m -XX:MaxPermSize=256m"
   -XX:MaxPermSize改为256或512
 

 

方法二:window-->preferences-->Servers-->WebLogic-->WebLogic 12.x(选择你使用的版本)-->jdk。把里面的参数都扩大两倍即可。
 
其实造成这个的具体原因我也不太明白(本人是没毕业的实习生一枚),所以我在网上搜了一些解释。
由于SUN JVM对permanent heap generation 区域的内容不做垃圾回收造成应用动态Load class文件过多引起的OutOfMemory错误。
 
注意:参数值也不能设置过大,否则会出现Error occurred during initialization of VM
Could not reserve enough space for object heap ,意思就是Java虚拟机(JVM)分配的内存大于系统可用内存数,所以没有足够的空间分配给JVM来创建Object。
 
二、IDEA内存溢出
在Run/Debug Configuration中修改Tomcat的VM options,在里面输入以下内容:
-server -XX:PermSize=128M -XX:MaxPermSize=256m

 

欢迎指正和补充!
 
posted @ 2017-12-19 14:41  雪梨NOT404  阅读(3353)  评论(0编辑  收藏  举报