Exception in thread “commons-pool-EvictionTimer”

博客内容描述了作者遇到的一个问题,即在运行过程中遇到了'commons-pool-EvictionTimer'线程的异常,错误提示为内存溢出(OutOfMemoryError: PermGen space)。作者首先尝试通过调整Maven的内存设置来解决,但未成功。随后,通过增加Java虚拟机的默认VM参数-Xms512m -Xmx512m -XX:PermSize=512m -XX:MaxPermSize=512m,问题得到解决。这个解决方案是在Eclipse的配置中进行的,并指出设置环境变量JAVA_OPTS可能也需要重启Eclipse和Java JVM。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Exception in thread “commons-pool-EvictionTimer”
刚遇到这个问题,以为是maven运行时内存不足,于是修改maven的运行时内存大小为-Xms512m -Xmx512m -XX:PermSize=512m -XX:MaxPermSize=512m
通过定义MAVEN_OPTS和修改mvn.bat方式都 没成功,又报错
WARNING: Exception occur when redo failure delete operation.
java.lang.OutOfMemoryError: PermGen space
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access 100(URLClassLoader.java:71)atjava.net.URLClassLoader 1.run(URLClassLoader.java:361)
at java.net.URLClassLoader 1.run(URLClassLoader.java:355)atjava.security.AccessController.doPrivileged(NativeMethod)atjava.net.URLClassLoader.findClass(URLClassLoader.java:354)atorg.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:392)atorg.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:363)atjava.lang.ClassLoader.defineClass1(NativeMethod)atjava.lang.ClassLoader.defineClass(ClassLoader.java:800)atjava.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)atjava.net.URLClassLoader.defineClass(URLClassLoader.java:449)atjava.net.URLClassLoader.access 100(URLClassLoader.java:71)
at java.net.URLClassLoader 1.run(URLClassLoader.java:361)atjava.net.URLClassLoader 1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:392)
at org.mortbay.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:363)
at redis.clients.jedis.JedisFactory.makeObject(JedisFactory.java:63)
at org.apache.commons.pool2.impl.GenericObjectPool.create(GenericObjectPool.java:819)
at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:429)
at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:360)
at redis.clients.util.Pool.getResource(Pool.java:40)
at com.suning.ids.client.storage.redis.AbstractRedisStorageAccessor$JedisPoolWrapper.getResource

(AbstractRedisStorageAccessor.java:404)
at com.suning.ids.client.storage.redis.AbstractRedisStorageAccessor$JedisPoolWrapper.getResource

(AbstractRedisStorageAccessor.java:1)
at com.suning.ids.client.storage.redis.RedisStorageAccessorImpl.process(RedisStorageAccessorImpl.java:822)
at com.suning.ids.client.timer.SharedTimer$1.run(SharedTimer.java:45)
at java.util.TimerThread.mainLoop(Timer.java:555)

Jul 11, 2016 10:37:37 AM com.suning.ids.client.timer.SharedTimer$1 run
SEVERE: Exception:
java.lang.OutOfMemoryError: PermGen space

通过上网查询java.lang.OutOfMemoryError: PermGen space得知是Java JVM内存溢出导致,于是又在eclipse中
Java->installed JREs->edit->default VM arguments增加了
-Xms512m -Xmx512m -XX:PermSize=512m -XX:MaxPermSize=512m
相当于增加了Java虚拟机的运行时内存,就成功了,不报错了。

网上查的设置环境变量JAVA_OPTS也可以,但是好像要重启eclipse和java jvm,因为我设置后没有及时生效让我误认为不行,后来发现可以,所以就又编辑了博客。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值