当前位置: 首页 > 知识库问答 >
问题:

有什么理由不将Felix包与Equinox框架一起使用吗?

邢运良
2023-03-14

我正在开发一个以前使用Apache Felix作为OSGi框架的嵌入式系统。我的任务是移除Felix并用Equinox替换它,因为Equinox目前支持OSGi规范的最新版本。
设备上的软件有相当数量的专有代码,这些代码与通常随Felix一起发货的某些捆绑包直接相关(比如eventadmin和log bundle)。这些捆绑包的Equinox版本非常不同,重写代码需要大量的工作。

即使在将底层框架从Felix切换到Equinox之后,是否有任何理由不继续使用这些Felix捆绑包?

我想澄清的是,我仍然在努力理解OSGi到底是做什么的。我担心的是,如果不使用Equinox捆绑包,我们将失去切换到Equinox的优势(我担心提供最新规范的所有额外代码都来自捆绑包,并且专门为Equinox设计的应用程序将期望这些要使用的捆绑包。)。

共有1个答案

禄豪
2023-03-14

Apache Felix框架实现了OSGi核心规范,而不是更多。Equinox还实现了OSGi核心规范。

您正在询问ApacheFelix的子项目(EventAdmin、SCR等)可以在春分点内使用。答案是肯定的。您可以在Equinox中使用许多子项目(如果不是全部的话),因为它们只依赖于核心规范。

他们被称为“Felix…”可能令人困惑。它们可以被称为其他任何东西,因为它们与容器实现无关,只与Felix和Equinox实现的规范有关。

顺便说一句:一些子项目实现了OSGi汇编规范中的章节。如果其他人完全实现了相同的章节,它们应该是可以切换的,没有问题。

 类似资料:
  • 问题内容: 我在Django中有一些REST API端点,我想对Graphene使用相同的身份验证。该文档不提供任何指导。 问题答案: 例如,如果在API视图中使用,则可以将端点添加到以这种方式装饰的GraphQLView中: urls.py: 请注意,我们添加了一个新的端点,并保留了GraphiQL工具使用的原始端点。 然后,您应该在GraphQL客户端中设置标头并指向端点。 更新:请参阅此Gi

  • 我尝试将一个play框架示例连接到一个oracle 10g数据库,因此我使用了以下字符串连接: 我尝试了不同的方法(在每行放入< code>"",尝试用< code>localhost代替我的侦听器的ip地址,...)但是什么都不管用。

  • 问题内容: 我指的是模块中的OrderedDict,这是一个有序的字典。 如果它具有可订购的附加功能,我意识到这通常不是必需的,但是即使如此,是否还有缺点?慢一点吗?是否缺少任何功能?我没有看到任何丢失的方法。 简而言之,为什么我 不 总是使用它而不是普通的词典? 问题答案: 是的子类,并且需要更多内存来跟踪键的添加顺序。这不是小事。该实现在幕后增加了第二个,所有键的双向链接列表(这是记住顺序的部

  • 问题内容: 这是我的架构: 这是代码: 在包含了用户的。 该代码有效,除非添加了。我使用来过滤结果,仅获取我关注的用户的图片,但是console.log向我显示搜索结果是不确定的,但是当我不编写查询时,就会得到图片,但我会获取所有图片,而不仅是我关注的用户的图片。 有什么解决方案吗…? 谢谢前进! 编辑: 编辑: 问题答案: Mongoose不会对的参数进行任何基于模式的转换,因此您需要将字符串I

  • 我读了一些帖子(特别是BalusC帖子)并在谷歌上搜索了原因(不深入),但我找不到为什么不应该使用实体bean作为托管bean。原因是什么?(我正在学习“ProJSF和HTML5”,在本书中,实体bean被用作托管bean。)

  • 问题内容: 在研究Angularjs的FEQ时,我看到了以下文章: $ rootScope存在,但可以用于邪恶 Angular中的范围形成一个层次结构,原型通常是从​​树顶部的根范围继承。通常这可以忽略不计,因为大多数视图都有自己的控制器,因此也有自己的作用域。 有时,有些数据要对整个应用程序进行全局处理。对于这些,您可以像其他作用域一样在其上注入并设置值。由于作用域是从根作用域继承而来的,因此这