背景
mat是一个用来分析JVM内存泄漏的工具(参见文章JVM学习笔记之GUI监控工具,内存泄漏参见文章JVM学习之垃圾回收和垃圾回收器),但是在MAC下的安装运行并不像windows上那么简单,本文对mat在mac下的下载安装做一个记录
下载
登录官网https://www.eclipse.org/mat/downloads.php,注意新版本的mat对jdk版本要求比较高,由于我的jdk为1.8,因此要在Previous Release中下载旧版本,比如1.10:https://mirrors.nju.edu.cn/eclipse//mat/1.10.0/rcp/MemoryAnalyzer-1.10.0.20200225-macosx.cocoa.x86_64.zip。
点击合适的OS版本进行下载后,在弹出的界面中,不要使用默认的加拿大镜像,否则会很慢,我们点击Show all
在出来的镜像列表中选择带有中国字样的即可
配置
下载后,直接unzip解压,就会得到mat.app目录,我们cd进去
➜ ~ unzip MemoryAnalyzer-1.10.0.20200225-macosx.cocoa.x86_64.zip
➜ ~ cd mat.app
编辑配置文件
➜ ~ vim Contents/Eclipse/MemoryAnalyzer.ini
在--launcher.library和-vmargs之间,插入jdk的bin目录,即下面两行
-vm
/Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk/Contents/Home/bin
添加完之后全文如下所示
-startup
../Eclipse/plugins/org.eclipse.equinox.launcher_1.5.0.v20180512-1130.jar
--launcher.library
../Eclipse/plugins/org.eclipse.equinox.launcher.cocoa.macosx.x86_64_1.1.700.v20180518-1200
-vm
/Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk/Contents/Home/bin
-vmargs
-Xmx1024m
-Dorg.eclipse.swt.internal.carbon.smallFonts
-XstartOnFirstThread
保存后,通过以下命令即可启动mat
➜ ~ ./mat.app/Contents/MacOS/MemoryAnalyzer