Bootstrap

Exception in thread http-8080-exec-

Java代码   收藏代码
  1. Exception in thread "ContainerBackgroundProcessor[StandardEngine[Catalina]]"   
Java代码   收藏代码
  1. java.lang.OutOfMemoryError: PermGen space  
 

Java代码   收藏代码
  1. 原因:  
  2.   
  3. PermGen space的全称是Permanent Generation space,  
Java代码   收藏代码
  1. 是指内存的永久保存区域,这块内存主要是被JVM存放Class和Meta信息的,  
Java代码   收藏代码
  1. Class在被Loader时就会被放到PermGen space中,  
Java代码   收藏代码
  1. 它和存放类实例(Instance)的Heap区域不同,GC(Garbage Collection)  
Java代码   收藏代码
  1. 不会在主程序运行期对PermGen space进行清理,所以如果你的应用中有很多CLASS的话,  
Java代码   收藏代码
  1. 就很可能出现PermGen space错误,这种错误常见在web服务器对JSP进行pre compile的时候。  
Java代码   收藏代码
  1. 如果你的WEB APP下都用了大量的第三方jar, 其大小超过了jvm默认的大小(4M)那么就会产生此错误信息了。  
 

Java代码   收藏代码
  1. 解决方法1:   
  2.   
  3. 手动设置MaxPermSize大小,如果是linux系统,修改TOMCAT_HOME/bin/catalina.sh,如果是windows系统,修改TOMCAT_HOME/bin/catalina.bat,  
  4. 在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入以下行:  
  5. JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=128m  
 解决方法2
Java代码   收藏代码
  1. 修改eclipse.ini文件,修改如下:  
  2.   
  3.   
  4. -vmargs  
  5. -Dosgi.requiredJavaVersion=1.5  
  6. -Xms128m  
  7. -Xmx512m  
  8. -XX:PermSize=64M   
  9. -XX:MaxPermSize=128M  
  10.   
  11. 如果还报错,可以考虑如下修改  
  12.   
  13.   
  14. -vmargs  
  15. -Dosgi.requiredJavaVersion=1.5  
  16. -Xms512m  
  17. -Xmx1024m  
  18. -XX:PermSize=256M   
  19. -XX:MaxPermSize=512M  

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;