public interface MyModule {
void execute();
}
public class MyModuleImpl implements MyModule {
public void execute() {
}
}
public class MyApp {
public static void main(String[] args) {
FrameworkFactory frameworkFactory = new FrameworkFactory();
Framework framework = frameworkFactory.newFramework();
try {
framework.start();
BundleContext bundleContext = framework.getBundleContext();
MyModule module = new MyModuleImpl();
bundleContext.registerService(MyModule.class.getName(), module, null);
ServiceReference<MyModule> serviceReference = bundleContext.getServiceReference(MyModule.class);
MyModule myModule = bundleContext.getService(serviceReference);
myModule.execute();
} catch (BundleException e) {
e.printStackTrace();
}
}
}