一尘不染

tomcat-先前运行的类仍在内存中加载

jsp

当停止我的项目时,tomcat说:

以下Web应用程序已停止(重新加载,取消部署),但它们先前运行的类仍被加载到内存中,从而导致内存泄漏(使用事件探查器进行确认)。

我们在哪里发现内存中剩下哪些类?

请帮我 。


阅读 386

收藏
2020-06-08

共1个答案

一尘不染

您可以运行jmap -histo它将显示您已加载的类。

例如:

jmap -histo[:live] <pid>
    to connect to running process and print histogram of java object heap
    if the "live" suboption is specified, only count live objects

Example: jmap -dump:live,format=b,file=heap.bin <pid>

另一种方法是启用类加载调试信息,并执行一些脚本来检测剩下的内容。

2020-06-08