我有关于声明式OSGi服务的问题。我有以下接口:声明式OSGi服务
public interface PrintService {
public void print();
}
及其实施:
public class PrintServiceImpl implements PrintService {
@Override
public void print() {
System.out.println("Hello from PrintServiceImpl!");
}
}
OSGI-INF/component.xml文件:
<scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0" name="service">
<implementation class="service.PrintServiceImpl"/>
<service>
<provide interface="print.PrintService"/>
</service>
</scr:component>
MANIFEST.MF:
Service-Component: OSGI-INF/component.xml
我安装服务并启动后它什么都没有发生。我怎样才能激活它并打印“Hello PrintServiceImpl!”到控制台。
您可以在管理控制台中看到您声明的服务吗?它活跃吗? –
是的,我使用命令“ss”并且它是活动的,但是命令“ls”状态是“不满意”。 –
检查你的软件包org.eclipse.equinox.ds及其依赖项是否添加到启动配置中 –