Tomcat:Caused by: java.lang.OutOfMemoryError: PermGen space
2007-11-21 10:44
639 查看
这个应该遇到的人比较多,这里我也遇到了,网上查了一下,看到下面的一段话,感觉不错,就放在这里。引用自:
http://hi.baidu.com/zoomx/blog/item/77d93ca819f0a0b0cb130c8d.html
项目中遇到了系统停止响应的问题,查看日志发现
Tomcat报告Caused by: 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大小
设置参数:-Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m
Tomcat中,修改TOMCAT_HOME/bin/catalina.sh(linux系统下start.sh会调用它来启动tomcat,windows下调用catalina.bat,修改类似)
在文件头部注释后加入
J***A_OPTS='-Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m'
如果tomcat运行多个系统,将相同的第三方jar文件移置到tomcat/shared/lib目录下,这样可以达到减少
jar 文档重复占用内存的目的。
另注,这里还有在解决问题的时候,看到的几篇相关的贴子,不过,可能E文比较多:
http://forums.quanpc.com/2513/ShowThread.aspx
http://forum.java.sun.com/thread.jspa?threadID=5138872
http://www.theserverside.com/news/thread.tss?thread_id=27481
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/management/MemoryMXBean.html
http://hi.baidu.com/zoomx/blog/item/77d93ca819f0a0b0cb130c8d.html
项目中遇到了系统停止响应的问题,查看日志发现
Tomcat报告Caused by: 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大小
设置参数:-Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m
Tomcat中,修改TOMCAT_HOME/bin/catalina.sh(linux系统下start.sh会调用它来启动tomcat,windows下调用catalina.bat,修改类似)
在文件头部注释后加入
J***A_OPTS='-Xms256m -Xmx512m -XX:MaxNewSize=256m -XX:MaxPermSize=256m'
如果tomcat运行多个系统,将相同的第三方jar文件移置到tomcat/shared/lib目录下,这样可以达到减少
jar 文档重复占用内存的目的。
另注,这里还有在解决问题的时候,看到的几篇相关的贴子,不过,可能E文比较多:
http://forums.quanpc.com/2513/ShowThread.aspx
http://forum.java.sun.com/thread.jspa?threadID=5138872
http://www.theserverside.com/news/thread.tss?thread_id=27481
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/management/MemoryMXBean.html
相关文章推荐
- Tomcat:Caused by: java.lang.OutOfMemoryError: PermGen space
- Tomcat:Caused by: java.lang.OutOfMemoryError: PermGen space的解决方案
- Tomcat:Caused by: java.lang.OutOfMemoryError: PermGen space
- Tomcat:Caused by: java.lang.OutOfMemoryError: PermGen space
- Tomcat:Caused by: java.lang.OutOfMemoryError: PermGen space
- Tomcat:Caused by: java.lang.OutOfMemoryError: PermGen space的解决方案
- Tomcat8 Caused by: java.lang.OutOfMemoryError: PermGen space错误解决方法
- Tomcat:Caused by: java.lang.OutOfMemoryError: PermGen space
- Caused by: java.lang.RuntimeException: by java.lang.OutOfMemoryError: PermGen space(tomcat 启动时提示内存溢出)
- Tomcat:Caused by: java.lang.OutOfMemoryError: PermGen space解决方案
- Tomcat启动项目Caused by: java.lang.OutOfMemoryError: Java heap space
- Eclipse Tomcat 内存不足:Caused by: java.lang.OutOfMemoryError: Java heap space
- Caused by: java.lang.OutOfMemoryError: PermGen space
- Tomcat发布Maven项目遇到异常:java.lang.OutOfMemoryError: PermGen space
- 本地启动tomcat的时候报内存溢出错误:java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: PermGen space
- Tomcat – java.lang.OutOfMemoryError: PermGen space
- Eclipse中通过Tomcat运行J2EE项目java.lang.OutOfMemoryError: PermGen space的解决方案_Tomcat服务器
- 在eclipse中的tomcat中出现报错 Java.lang.OutOfMemoryError: PermGen space
- Tomcat溢出问题Exception in thread "http-apr-8080-exec-8" java.lang.OutOfMemoryError: PermGen space
- Eclipse中通过Tomcat运行J2EE项目java.lang.OutOfMemoryError: PermGen space的解决方案