将Java Mission Control连接到Wildfly 16

时间:2019-05-19 11:26:53

标签: java wildfly jmc

我尝试将Java Mission Control(JMC)与Wildfly 16连接。应用程序服务器位于Docker上。

我通过jconsole成功连接到wildfly,要对其进行管理,我遵循了here中所述的步骤。

不幸的是,我没有运气通过JMC进行连接。我使用的URL如下所示:

  

service:jmx:remoting-jmx://192.168.99.100:9990

  • 我尝试将Xbootclasspath设置为here所描述的jboss-cli-client.jar,但我只是遇到Unable to connect错误。
  • 我设置了相同的jar,用于jconsole,但仍然得到Unable to connect
  • 我尝试在容器站点上添加标志,如图here所示,但是有了这些标志,甚至连wildfly都没有开始。

然后,我发现here的想法是对一些jboss类进行硬编码以通过remoting-jmx启用连接。根据wildfly16提供的内容,我更改了jar的版本,并将其放入jmc.ini中。

-Xbootclasspath/a:"C:/Program Files/Java/jdk-10.0.2/lib/missioncontrol/dropins/jboss-cli-client.jar;C:/wildfly-16.0.0.Final/modules/system/layers/base/org/jboss/remoting-jmx/main/remoting-jmx-3.0.1.Final.jar;C:/wildfly-16.0.0.Final/modules/system/layers/base/org/jboss/remoting/main/jboss-remoting-5.0.8.Final.jar;C:/wildfly-16.0.0.Final/modules/system/layers/base/org/jboss/logging/main/jboss-logging-3.3.2.Final.jar;C:/wildfly-16.0.0.Final/modules/system/layers/base/org/jboss/xnio/main/xnio-api-3.6.5.Final.jar;C:/wildfly-16.0.0.Final/modules/system/layers/base/org/jboss/xnio/nio/main/xnio-nio-3.6.5.Final.jar;C:/wildfly-16.0.0.Final/modules/system/layers/base/org/jboss/marshalling/main/jboss-marshalling-2.0.6.Final.jar;C:/wildfly-16.0.0.Final/modules/system/layers/base/org/jboss/marshalling/river/main/jboss-marshalling-river-2.0.6.Final.jar;C:/wildfly-16.0.0.Final/modules/system/layers/base/org/jboss/as/cli/main/wildfly-cli-8.0.0.Final.jar;C:/wildfly-16.0.0.Final/modules/system/layers/base/org/jboss/staxmapper/main/staxmapper-1.3.0.Final;C:/wildfly-16.0.0.Final/modules/system/layers/base/org/jboss/as/protocol/main/wildfly-protocol-8.0.0.Final.jar;C:/wildfly-16.0.0.Final/modules/system/layers/base/org/jboss/dmr/main/jboss-dmr-1.5.0.Final.jar;C:/wildfly-16.0.0.Final/modules/system/layers/base/org/jboss/as/controller-client/main/wildfly-controller-client-8.0.0.Final.jar;C:/wildfly-16.0.0.Final/modules/system/layers/base/org/jboss/threads/main/jboss-threads-2.3.3.Final.jar;C:/wildfly-16.0.0.Final/modules/system/layers/base/org/jboss/logmanager/main/jboss-logmanager-2.1.7.Final.jar"

在那之后,最后,我还有另一个错误,是

  

无法初始化org.jboss.remotingjmx.RemotingConnector类

我在Xbootclasspath中添加了remoting-jmx-3.0.1.Final的依赖项,但是仍然遇到相同的错误。

我的问题是,您有什么主意,如何使这种连接有效?也许有人用不同的方式做到了?

任何建议如何解决这个问题,将是无价之宝?因为我缺乏解决方法的想法。

1 个答案:

答案 0 :(得分:0)

  1. 在%WILDFLY_HOME%\ bin \ standalone.conf.bat中 放在:

    设置“ JAVA_OPTS =%JAVA_OPTS%-XX:+ FlightRecorder”

  2. 在-vmargs下的jmc.ini中

    -Xbootclasspath / a:C:\%wildfly_home%\ bin \ client \ jboss-cli-client.jar

(%wildfly_home%当然不同,或者只是将jboss-cli-client.jar复制到另一个目录并更正路径) 3.运行JMC,然后创建“新建连接”-在“连接属性”窗格中,按下“自定义JMX服务URL”按钮,放入:

service:jmx:http-remoting-jmx://localhost:9990    

在凭据字段中仅输入用户名和密码,就应该为领域管理创建它们(例如,使用%wildfly_home%\ bin \ add-user.bat) 希望这对某人有帮助。