默認情況下,除非你從這個頁面指定參數JMX沒有一個端口上發佈:How to activate JMX...
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=9010
-Dcom.sun.management.jmxremote.local.only=false
-Dcom.sun.management.jmxremote.authenticate=false
如果您正在運行,你應該能夠訪問任何的系統屬性,看看他們是否有設置:
if (System.getProperty("com.sun.management.jmxremote") == null) {
System.out.println("JMX remote is disabled");
} else [
String portString = System.getProperty("com.sun.management.jmxremote.port");
if (portString != null) {
System.out.println("JMX running on port "
+ Integer.parseInt(portString));
}
}
順便說一句,我的SimpleJMX package允許您定義兩個JMX server和RMI port或將它們都設置爲相同的端口。用com.sun.management.jmxremote.port
定義的上述端口實際上是RMI端口。這告訴客戶端運行JMX服務器的端口。
[如何激活我的JVM上的JMX以訪問jconsole?](http://stackoverflow.com/questions/856881/how-to-activate-jmx-on-my-jvm-for-access -with-jconsole) – artbristol 2012-04-26 11:05:05