【发布时间】:2017-07-05 07:41:40
【问题描述】:
我正在开发一个使用 OSGi 的项目,该项目具有以下代码
@Component(policy = ConfigurationPolicy.OPTIONAL, ds = true, immediate = true, metatype = false)
@Service(TestInterface.class)
public class TestInterface{
这里的代码没有实现服务将要在其中公开的接口。此外,我已经在任何地方验证了@Reference 没有在任何地方引用它。 它真的需要将其作为服务而不是仅作为组件吗?如果我想在另一个组件中使用它,我必须通过实现接口将其作为服务。 OSGI 真的要求暴露的服务应该实现接口吗?
【问题讨论】:
-
声明式服务中没有@Service。您使用什么类型的注释?
-
felix scr 注释
-
@Service 注释来自哪里?
-
@ChristianSchneider,这是Felix SCR annotations 的链接。我登陆这个线程是为了考虑同样的问题,在我的一个项目中,有类似的服务没有界面并且工作正常。