如何打开hprof文件 实战分析Tomcat的类加载器结构(使用Eclipse MAT验证)了不得,我可能发现了Jar 包冲突的秘密

时间:2024-02-23 11:25:47

一、前言

最近学习深入java虚拟机的书,照着里面的例子跑了下。

下面是demo:

/**
 * VM Args:-Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError
 * @author zzm
 */
public class HeapOOM {

    static class OOMObject {
    }

    public static void main(String[] args) {
        List<OOMObject> list = new ArrayList<OOMObject>();

        while (true) {
            list.add(new OOMObject());
        }
    }
}

程序执行效果:

 

 

我这边产生的hprof文件路径:

E:\IdeaProjects\java-virtual\java_pid2432.hprof

 

打开这种文件的话,可以使用如下的软件:

Memory Analyzer

 

官网:http://www.eclipse.org/mat/downloads.php

 

双击打开,装载对应的 hprof 即可。

 

二、使用案例