我正在尝试在引发异常的情况下分析 Java 堆转储。所以例如对于一个方法
void foo(){
int[] a = new int[100];
//do stuff
throw new RunTimeException();
}
我创建了一个堆转储并尝试访问数组的值。为此,我使用 com.sun.tools.hat.internal.model 提供的类。
问题是,当我遍历快照给出的所有 JavaThings 时,我找不到数组。是否有可能没有保存最后一个堆栈帧的值?
另外:使用给定类访问示例中的数组的最简单方法是什么?