1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > Visual GC插件「不受此JVM支持」问题

Visual GC插件「不受此JVM支持」问题

时间:2023-10-12 09:54:19

相关推荐

Visual GC插件「不受此JVM支持」问题

利用visual vm监控服务器上的java虚拟机, 在默认情况下, 是没有办法使用 visual vm的插件visual gc的。 安装插件后打开visual gc的页签, 会显示「不受此JVM支持」

如下图

要解决这个问题需要Java自带的Jstatd服务, 使用步骤如下

第一, 在服务器上的java安装的bin下(如/usr/local/java/jdk1.8.0_91/bin)新建一个文件

文件名为jstatd.all.policy

文件内容如下

grantcodebase"file:${java.home}/../lib/tools.jar"{permissionjava.security.AllPermission;};

第二, 在当前目录中(bin)执行如下命令

./jstatd-J-Djava.rmi.server.hostname=192.168.110.227-J-Djava.security.policy=jstatd.all.policy-p9999

命令中的hostname是服务器的IP地址,-p是端口,这两项需要自己指定(网上使用默认IP地址和端口的命令,但我尝试了无法生效)。如果不指定端口。那么端口的默认值为1099。执行完毕后,使用telnet命令测试端口是否被监听。 如果一切正常, 说明jstatd服务已经配置成功了。(

1.启动jstatd

cd $JAVA_HOME/bin

./jstatd -J-Djava.security.policy=all.policy &

启动后会开启注册端口1099和一个随机的连接端口,注册端口也可通过-p参数指定,如./jstatd -J-Djava.security.policy=all.policy -p 10003 & 2.设置防火墙 除了把1099添加到防火墙规则外,还需要找到另外一个随机端口,也加入到规则中 执行 netstat -anp | grep *jstatd

可以看到除了1099,jstatd还监听了53040端口,把这个也加入到规则中,添加方法参照2.5 (注意:这个随机端口重启后会变化))

第三,在电脑上打开visual vm软件,右击左侧菜单中的「远程」菜单项,输入目标服务器IP地址添加一个远程主机。 然后再右击新加的主机菜单项, 在弹出的菜单中选择「添加jstatd连接」。 在弹出的对话框中的文本框中输入在第二步配置中指定的端口号(默认是1099)

点击确定后,Visual GC插件就可以正常使用了

参考:

Visual GC插件「不受此JVM支持」问题

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。