Tomcat:OutOfMemoryError Permgen Space

时间:2013-03-18 21:56:14

标签: java tomcat log4j quartz-scheduler permgen

我正在使用Tomcat 6开发JSP应用程序。

由于我确实将Quartz Scheduler Framework和Log4J库添加到项目中,因此Tomcat在重新部署时会开始抛出此异常。

我已经知道了问题的原因,现在我知道必须使用类加载器。

所以,我猜这个问题可能是由自动加载某些类的记录器库引起的。

我该如何处理这个问题? 有另一种方法可以在不使用log4j.properties文件的情况下设置记录器,以确保类加载器能够正常工作。

1 个答案:

答案 0 :(得分:4)

一种方法是通过将以下JVM参数添加到下面的

来增加permgen空间
-XX:MaxPermSize=256m

但它只会延迟OOM错误。如果你一次又一次地重新部署,你将再次遇到permgen内存不足。本文非常清楚地解释了这个原因,我在此不再赘述。 http://frankkieviet.blogspot.com/2006/10/classloader-leaks-dreaded-permgen-space.html。抱歉,我没有不同的方法来设置记录器以避免此问题。在实践中,我总是增加MaxPermSize,然后在部署之前循环服务器。

相关问题