首页 > 解决方案 > 启用jmx远程连接后无法重启tomcat

问题描述

我想远程监控我在 tomcat 中运行的应用程序,所以我在 setenv.sh 文件中配置了 JMX 远程连接。

以下是我的配置。

CATALINA_OPTS="
-Dcom.sun.management.jmxremote 
-Dcom.sun.management.jmxremote.port=<jmx_port> 
-Dcom.sun.management.jmxremote.rmi.port=<jmx_port> 
-Dcom.sun.management.jmxremote.ssl=false 
-Dcom.sun.management.jmxremote.authenticate=false 
-Djava.rmi.server.hostname=<my_host_ip>".

注意:这仅用于测试。我不介意在我的配置中禁用 ssl 和 authenticate = false。

我能够使用在我的本地机器上运行的 visualmv 连接到它。当我尝试重新启动 tomcat 时,问题就开始了。在关闭过程中,tomcat 成功关闭,但运行 jmx 的端口仍处于活动状态并且可供 JMX 使用。所以在tomcat启动时,它抱怨已经在使用中,因此tomcat启动失败。

任何帮助将不胜感激。

标签: javatomcatjmx

解决方案


您是否为 jmxremote.port 和 jmxremote.rmi.port 使用相同的端口?如果是这样,它们需要有所不同。一个是服务监听器,另一个是 rmi 注册中心。


推荐阅读