导致OutOfMemoryError:PermGen空间的原因是什么? MemoryAnalyzer将JNI本地引用显示为GC Root

时间:2017-03-01 15:13:44

标签: java garbage-collection jvm tomee eclipse-memory-analyzer

我在apache-tomee上运行测试套件(许多测试用例,带有TestNG框架),这需要非常频繁地部署和取消部署。但不幸的是,Apache Tomee实例在测试套件完成之前抛出了OOM。

Jconsole表明堆和非堆内存使用量只会增长和增长。

我使用Eclipse Memory Analyzer来分析HeapDump文件,但发现了一些奇怪的东西:

MemoryAnalyzer domainator_tree

Path to GC Root, all JNI Local reference....

我无法找出谁是类TestNG的GC根并导致OOM,我们没有任何JNI代码。

ThreadLocalMemoryLeakPreventionListener配置为Enabled。 Apache-TomEE与tomcat8.0.32 JDK1.7.0_67

add:当我切换到JDK1.7.0_80时,事情变得更好但最终仍然是OOM。 Memory Analyzer显示同样的事情。

0 个答案:

没有答案