代码之家  ›  专栏  ›  技术社区  ›  Chris Dolan

OSGi片段捆绑包可以发布声明性服务吗?

  •  7
  • Chris Dolan  · 技术社区  · 14 年前

    我创建了一个片段包,用于访问第二方jar的一些添加功能。我的片段应该注册一个服务来公开这个新功能。它似乎不起作用。在深入进行故障排除之前,我想知道这是否允许?也就是说,Felix SCR的捆绑包观察程序是查看片段还是忽略片段?

    2 回复  |  直到 14 年前
        1
  •  9
  •   Chris Dolan    14 年前

    啊哈,我自己在规范第112.4.2节中找到了答案:“SCR忽略片段中指定的服务组件清单标头。”这与3.14.3一致:“以下列表包含片段捆绑包中不得使用的标头:bundle Activator”

        2
  •  6
  •   thangdc94    9 年前

    对但是主机捆绑包必须对此开放。所谓打开,我的意思是主机捆绑包必须具有 Service-Components 头,其被配置为使得将在片段中找到任何描述符。例如:

    Service-Components: OSGI-INF/*.xml 
    

    将找到所有 .xml 中的文件 OSGi-INF/ 主机的文件夹捆绑所有附加的片段。

    我看到Eclipse SmartHome项目使用这个解决方案使他们的UI更加可定制。

    更多信息: http://apache-felix.18485.x6.nabble.com/DS-amp-fragments-td5004610.html