配置jmxremote时无法正常停止tomcat

时间:2011-11-20 05:20:58

标签: java tomcat jmx

我在catalina.bat中添加了jmxremote配置:

set JAVA_OPTS=-Dcom.sun.management.jmxremote.port=9004 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false

这样我就可以启动jconsole来监控tomcat的性能。

但是我遇到了一个问题,我无法通过$CATALINA_HOME\catalina.bat stop正常停止tomcat,$CATALINA_HOME\shutdown.bat

也没有

有什么建议吗?

3 个答案:

答案 0 :(得分:6)

有两件事:

  • 请查看我的blog post,在那里我总结了如何正确地做到这一点(过去遇到过这个......)
  • 确保只将定义放在start命令所看到的位置,而不是关闭。原因是jmx远程创建一个侦听套接字,如果配置不正确,则关闭以侦听同一端口。

答案 1 :(得分:0)

你确定Tomcat成功启动了吗?

通常您需要在其他jmx属性之前添加此属性:

-Dcom.sun.management.jmxremote

http://tomcat.apache.org/tomcat-6.0-doc/monitoring.html#Enabling_JMX_Remote

答案 2 :(得分:0)

最好将这些参数添加到文件setenv.sh或setenv.bat中的CATALINA_OPTS

# JMX OPTIONS
CATALINA_OPT="$CATALINA_OPT "-Dcom.sun.management.jmxremote
CATALINA_OPT="$CATALINA_OPT "-Dcom.sun.management.jmxremote.port=9012
CATALINA_OPT="$CATALINA_OPT "-Dcom.sun.management.jmxremote.local.only=false
CATALINA_OPT="$CATALINA_OPT "-Dcom.sun.management.jmxremote.authenticate=false
CATALINA_OPT="$CATALINA_OPT "-Dcom.sun.management.jmxremote.ssl=false