我现在正在创建一个矩阵,显示Knopflerfish、Equinox和Felix在多大程度上兼容OSGi 4.2。
到目前为止,我查看了Knopflerfish文档(链接1,链接2),以了解核心和概要规范实际上实现了多少。
核心规范似乎已经完全实现,尽管关于安全层和声明性服务有一些不一致的声明。
让我好奇的是,在所有的简编规范中,有多少是被实现的:
为了找到更多的信息,我下载了Knopflerfish的源代码(下载页面),并查看了它。看起来,规范的某些部分是通过OSGi联盟(org.osgi.*)提供的“原始”框架实现的。
一个例子是UPnP包:
alt文本http://img6.imageshack.us/img6/5853/screenshot20100403at212.png
是否意味着Knopflerfish没有直接实现的缺失部分是通过“原始”OSGi框架添加的?
,这是否也适用于其他框架,如Felix或Equinox?
发布于 2010-04-05 12:18:40
大多数OSGi规范都定义了服务的接口类。您可以直接从OSGi联盟的网站下载这些类和规范。
诸如Knopflerfish之类的实现必须提供底层功能,例如您在示例中提到的UPnP服务管理的实际实现。一些接口类还提供了必须由用户服务的开发人员实现的接口,例如BundleActivator。
所有声称符合OSGi的框架都必须为这些接口提供实现。没有“原始”的OSGi框架(当然,除了参考实现之外)。接口不提供实现。
https://stackoverflow.com/questions/2572400
复制相似问题