我不太清楚您是否在谈论以编程方式从当前JVM内部还是从客户端远程查找MBean。有许多JMX客户端库。您可能需要尝试我的SimpleJMX软件包。
使用我的代码,您可以执行以下操作:
JmxClient client = new JmxClient(hostName, port);Set<ObjectName> objectNames = getBeanNames() for (ObjectName name : objectNames) { MBeanAttributeInfo[] attributes = getAttributesInfo(name); MBeanOperationInfo[] operations = getOperationsInfo(name);}如果您询问当前的JVM,那么您应该能够以这种方式从内部Bean获取Bean信息:
MBeanServer server = ManagementFactory.getPlatformMBeanServer();Set<ObjectName> objectNames = server.queryNames(null, null);for (ObjectName name : objectNames) { MBeanInfo info = server.getMBeanInfo(name);}


