我有远程 JBoss 7.1 服务器,我想使用 VisualVM 或 JConsole 连接到该服务器。
我用谷歌搜索了一下,发现了几个关于如何使用 VisualVM 或 JCoonsole 连接到 JBoss 7.1 的线程/教程,例如:
不幸的是,我没有通过 JMX 连接到我的 JBoss 7.1。
您对如何使用 VisualVM 连接到 JBoss 7.1 有任何想法吗?
编辑:
我将 -Dcom.sun.management.jmxremote.port=1090 -Dcom.sun.management.jmxremote.authenticate=false 添加到standalone.conf.bat,但出现异常:
引起:java.lang.IllegalStateException:LogManager 没有正确安装
alled(您必须将“java.util.logging.manager”系统属性设置为“org.jboss.logmanager.LogManager”)。
所以,我在 JAVA_OPTS 中添加了另一个选项:-Dcom.sun.management.jmxremote.port=1090 -Dcom.sun.management.jmxremote.authenticate=false -Djava.util.logging.manager=org.jboss.logmanager.LogManager
但我收到的异常(exception)是这样的:
Could not load Logmanager "org.jboss.logmanager.LogManager"
java.lang.ClassNotFoundException: org.jboss.logmanager.LogManager
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
最佳答案
找到了解决办法。我需要将以下参数添加到 standalone.conf.bat 中的 JAVA_OPTS 中:
-Dcom.sun.management.jmxremote.port=1090 ^
-Dcom.sun.management.jmxremote.authenticate=false ^
-Dcom.sun.management.jmxremote ^
-Dcom.sun.management.jmxremote.ssl=false ^
-Djava.util.logging.manager=org.jboss.logmanager.LogManager ^
-Xbootclasspath/p:<JBOSS_PATH>/modules/org/jboss/logmanager/main/jboss-logmanager-1.2.2.GA.jar ^
-Xbootclasspath/p:<JBOSS_PATH>/modules/org/jboss/logmanager/log4j/main/jboss-logmanager-log4j-1.0.0.GA.jar ^
-Xbootclasspath/p:<JBOSS_PATH>/modules/org/apache/log4j/main/log4j-1.2.16.jar -Djboss.modules.system.pkgs=org.jboss.logmanager
注1:使用
\
而不是 ^
在 Unix 上。注2:替换
<JBOSS_PATH>
使用您的 JBoss 7.x 安装路径。我的是 c:/java/jboss-as-7.1.1.Final
.
关于jboss7.x - 使用 VisualVM 连接到 JBoss 7,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19135550/