1.远程主机运行jstatd
首先新建文件 jstatd.all.policy ,内容如下
grant codebase "file:${java.home}/../lib/tools.jar"
{ permission java.security.AllPermission;
};
为了问题排查,我的版本稍微改了一下
grant codebase "file:/home/sakura/jdk8/lib/tools.jar" {
permission java.security.AllPermission;
};
启动jstatd
jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=远程主机的ip &
2.本地启动jvisualvm,添加远程主机,这里也可以使用域名。
3.补充
之前看了很多网上的教程,很多并没有在启动jstatd时指定hostname,如果在未指定hostname的情况下,发现visualvm无法出现远程主机java程序,则指定hostname