import javax.management.*;
public class MyApp {
private MBeanServer mBeanServer;
public static void main(String[] args) throws Exception {
MyApp app = new MyApp();
app.init();
app.registerMBeans();
app.start();
}
public void init() throws Exception {
mBeanServer = ManagementFactory.getPlatformMBeanServer();
}
public void registerMBeans() throws Exception {
ObjectName mBeanName = new ObjectName("com.example:type=MyMBean");
MyMBean mBean = new MyMBean();
mBeanServer.registerMBean(mBean, mBeanName);
}
public void start() throws InterruptedException {
// Application logic goes here
while (true) {
Thread.sleep(1000);
}
}
}
public interface MyMBean {
void doSomething();
}
<dependency>
<groupId>org.eclipse.microprofile.management</groupId>
<artifactId>microprofile-management-api</artifactId>
<version>1.1</version>
</dependency>