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

05-23 20:35