扩展JCONSOLE功能以实现客户端远程连接

Loc*_*234 12 java jmx jconsole

我有一个简单的JMX应用程序,它基于本教程公开了MBean

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

例如,我创建了一个简单的应用程序并将其打包在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
Run Code Online (Sandbox Code Playgroud)

使用managepement.properties看起来像这样:

com.sun.management.jmxremote=true
com.sun.management.jmxremote.port=1234
com.sun.management.jmxremote.login.config=Sample
Run Code Online (Sandbox Code Playgroud)

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

jconsole hostname:1234
Run Code Online (Sandbox Code Playgroud)

并使用扩展功能拉出jconsole窗口?

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

 jconsole hostname:1234 -classpath JconsoleExtension.jar
Run Code Online (Sandbox Code Playgroud)

Loc*_*234 4

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