OSGi R5企业版包含子系统规范。
此映射的目的是在felix或基于bnd/bndtools的基础设施中重用现有的bnd特性。
发布于 2015-07-03 19:30:55
是的..。有点。子系统功能强大,但也比Eclipse特性更复杂。
一个特性只是一组包。您可以将多个特性安装到单个OSGi框架中,每个特性的包可以相互交互,例如通过导入包或绑定服务。这使得它们很难测试和推理,因为与其他功能一起安装时,独立工作的功能可能无法工作。
子系统也是一组捆绑包,但它还包括一定程度的隔离。您可以控制来自一个子系统的包、服务和其他功能是否对任何其他子系统的成员可见。因此,它们更容易预测。
不幸的是,构建子系统是一项更为复杂的任务,据我所知,目前还没有具体的工具。我们还没有在bnd/Bndtools中做任何事情来帮助这一点。但是它是开源的..。欢迎捐款;)
发布于 2015-07-03 11:54:33
子系统和特性实际上是两个正交的事物。Eclipse特性是一组可以安装到OSGi运行时的包。实际上,一个包含大量Require-Bundle元素的包和一个特性之间并没有什么区别,只是需要安装它们。
另一方面,OSGi子系统是允许嵌套OSGi运行时的一种建议方法。然而,在OSGi规范的最终版本中,它们被更通用的布线结构所取代;但无论如何,它们所做的事情完全不同。
https://stackoverflow.com/questions/31181667
复制相似问题