为了管理OSGI服务之间的动态依赖性,引入了服务绑定器捆绑包here。该服务控制OSGI平台中所需服务的可用性,并根据服务的可用性和捆绑组件描述符中描述的绑定策略在服务之间建立绑定。当所需的服务不可用时,这将自定义捆绑包激活。
处女座是否提供这种服务,还是我们必须在处女座中添加和调整服务绑定器?
谢谢。
最佳答案
处女座没有提供服务绑定器,但是(如Holly建议的那样),有一些OSGi标准替代品可以满足您的各种需求。有两个标准涉及在包中的元数据中声明服务和服务引用:Blueprint和Declarative Services。这些已在OSGi规范和有关OSGi的各种出版书籍中进行了描述。
OSGi Blueprint由Gemini Blueprint组件实现,该组件将在2012年中期交付给Virgo 3.5.0中。较早版本的Virgo包括Spring DM 1.2.1,该技术产生了Blueprint标准。因此,在较早的版本中,您可以直接使用Spring DM(它的功能大约是Blueprint提供的功能的超集,并且具有类似Spring的语法,但略有不同),或者您可以将Gemini Blueprint自己添加到处女座(通过网络搜索技术)。
OSGi声明式服务是另一种替代方法,它已包含在Virgo 3.0中。实际上,服务绑定器是声明式服务的灵感来源。