有没有办法为同一类的多个对象使用相同(单个)对象名称进行 MBean 注册?更简单的方法是什么?
1 回答
0
不,没有。如果您尝试注册一个与另一个已注册的实例具有相同名称的实例,javax.management.InstanceAlreadyExistsException则会抛出 a。
您必须为第二个实例使用不同的名称,如下所示:
MBeanServer mbs = ManagementFactory.getPlatformMBeanServer();
ObjectName name = new ObjectName("firstInstance:type=Hello");
Hello mbean = new Hello();
mbs.registerMBean(mbean, name);
ObjectName name2 = new ObjectName("secondInstance:type=Hello");
Hello mbean2 = new Hello();
mbs.registerMBean(mbean2, name2);
于 2015-09-17T21:33:59.110 回答