0

我在以编程方式连接到本地 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
4

1 回答 1

0

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

com.sun.management.jmxremote.localConnectorAddress

这应该给你本地连接器地址。

然后从你的客户那里得到类似的东西

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

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

于 2013-01-28T12:03:00.707 回答