如何使用现有的 Eclipse MAT 索引进行交互式分析

Posted

技术标签:

【中文标题】如何使用现有的 Eclipse MAT 索引进行交互式分析【英文标题】:How to use existing Eclipse MAT indexes for interactive analysis 【发布时间】:2010-03-04 19:14:03 【问题描述】:

我正在尝试使用 Eclipse MAT(内存分析工具包)来分析一些相当大的堆转储(~2G)。不幸的是,我的笔记本电脑有 32 位 Windows,并且 MAT 用完了堆空间 @ 1.4G 分配的堆。我成功地在一个大型无头 64 位机器上从命令行运行堆索引器。但是,我无法说服 MAT 从我笔记本电脑的目录中导入这些索引文件,以便我可以交互地调查堆。我加载堆的所有尝试(连同旁边的索引文件)都导致 MAT 决定重新解析堆文件而不是使用现有索引。想法?

【问题讨论】:

【参考方案1】:

您需要将该目录中的所有文件复制到您的笔记本电脑。我已经成功地完成了很多次。我使用

在服务器上运行分析器
/opt/mat/MemoryAnalyzer -consolelog -application org.eclipse.mat.api.parse "$@" org.eclipse.mat.api:suspects org.eclipse.mat.api:top_components

这允许我打开堆转储,然后打开存储的报告。

【讨论】:

谢谢。我需要在奖励你之前尝试一下,但它看起来很有希望! 这些选项并不是必须的 @kohlerm :没有必要,但会确保报告是预先构建的,并且不会在内存较低的机器上运行。【参考方案2】:

您只需将所有具有相同文件名前缀的文件复制到新位置即可。 真的就这么简单。

【讨论】:

以上是关于如何使用现有的 Eclipse MAT 索引进行交互式分析的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Scala Eclipse IDE 连接到现有的 Hive

如何在 Android Studio 中打开我现有的 Eclipse 项目?

如何使用mac os X在eclipse中运行现有的maven项目

如何将现有的 Android 项目导入 Eclipse?

使用Eclipse载入一个现有的java项目

如何将 eclipse 服务器添加到现有的 EC2 实例 [关闭]