为客户端远程连接扩展 JCONSOLE 功能

Extending JCONSOLE functionality for client remote connections

我有一个简单的 JMX 应用程序,它公开了基于 this tutorial

的 MBean

是否可以在扩展 JCONSOLE 的 class 路径中使用自定义 class 启动此应用程序,以便当客户端尝试远程访问它时扩展的 jconsole window打开?

因此,例如,我创建了一个简单的应用程序并将其打包在 MyApp.jar 中。然后我 运行 它在 cmd 中使用以下命令:

java -classpath JconsoleExtension.jar;MyApp.jar 
-com.sun.management.jmxremote.login.config=management.properties 
-Djava.security.auth.login.config=./sample_jaas.config 
com.test.running.RunningImplementation

managepement.properties 看起来像这样:

com.sun.management.jmxremote=true
com.sun.management.jmxremote.port=1234
com.sun.management.jmxremote.login.config=Sample

客户端是否可以使用远程连接:

jconsole hostname:1234

并使用扩展功能启动 jconsole window?

或者,客户端在尝试连接时是否必须引用扩展名,例如:

 jconsole hostname:1234 -classpath JconsoleExtension.jar

看起来好像无法在服务器端扩展JConsole。扩展需要从客户端调用,因此他们需要访问扩展的 .jar。