Mac下处理MAT(Memory Analyzer Tool)报错的问题
当程序出现内存泄露(Out of memory)时,我们需要通过Eclipse的Memory Analyzer Tool去定位错误的代码。
从Eclipse官网下载MAT,https://www.eclipse.org/mat/downloads.php
选择不同操作的版本。
1 | Memory Analyzer 1.8.1 Release |
当我在Mac系统双击mat.app打开MAT时,系统报错,查看日志内容如下:
1 | !SESSION 2019-04-18 21:48:21.506 ----------------------------------------------- |
查看日志,分析原因,我们得知其中一个文件无写入权限。IllegalStateException: The platform metadata area could not be written.
我们可以指定一个具有写入权限的文件夹,设置如下:
编辑文件 /Applications/mat.app/Contents/Eclipse/MemoryAnalyzer.ini
添加-data
参数:
1 | -data |
data参数和路径必须在两个不同的行,data参数必须放在Laucher之前。
最终文件内容如下所示:
1 | -startup |
保存文件后,再次双击启动MAT,软件可以成功打开了。