使用JConsole查找JMX Server URL

时间:2012-09-10 15:23:50

标签: java jmx

我遇到了以编程方式连接到本地JMX服务器的问题。我加倍检查了JMX服务器,看起来很好,但我仍然无法连接。

但是,使用JConsole,我没有问题。

无论如何从JConsole找到正确的服务器URL?

顺便说一句,这是我正在尝试连接的服务器:

String jmxServer = "service:jmx:rmi:///jndi/rmi://localhost:" + DEFAULT_PORT + "/jmxrmi";

这些是我正在启动我的流程的JVM选项:

-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=DEFAULT_PORT
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false

1 个答案:

答案 0 :(得分:0)

在你的代码中,打印出系统属性

com.sun.management.jmxremote.localConnectorAddress

应该为您提供本地连接器地址。

然后从您的客户端

final JMXServiceURL jmxURL = new JMXServiceURL(localConnectorAddress);
final JMXConnector connector = JMXConnectorFactory.connect(jmxURL);
final MBeanServerConnection mbsc = connector.getMBeanServerConnection();

应该这样做......(做得好,就像我做的那样)