我想要阅读有关Java类的信息,没有实例,它的大小等等 来自java堆dump.I在我的程序中使用Eclipse MAT jar文件来读取堆转储文件。运行程序时我得到一个NullPointerException。
下面给出了访问堆转储文件的代码
public static void main(String[] args) throws SnapshotException {
ISnapshot iSnapshot = SnapshotFactory.openSnapshot(new File("path to\\heap_dmp.hprof"), new VoidProgressListener());
Collection<IClass> classes = iSnapshot.getClasses();
System.out.println(" size = "+classes.size());
}
在运行上述程序时,我遇到了异常
Exception in thread "main" java.lang.ExceptionInInitializerError
at heapanalyser.HeapAnalyser.main(HeapAnalyser.java:16)
Caused by: java.lang.NullPointerException
at org.eclipse.mat.snapshot.SnapshotFactory.<clinit>(SnapshotFactory.java:84)
... 1 more
任何人都可以解释如何编程分析Heap Dumps