【问题标题】:Include dependencies in Felix OSGi bundles在 Felix OSGi 包中包含依赖项
【发布时间】:2017-03-05 05:08:43
【问题描述】:

我是 OSGi 的新手。我正在使用 Apache Felix。我已经构建了一个捆绑包,并且它具有依赖关系。当我尝试使用 start file:/path/to/bundle.jar 启动捆绑包时,它给了我这个错误。

org.osgi.framework.BundleException:无法解析 lk.ucsc.research.BellyRunner [20](R 20.0):缺少要求 [lk.ucsc.research.BellyRunner [20](R 20.0)] osgi.wiring 。包裹; (osgi.wiring.package=lk.ucsc.research.bellygraph) 未解决的需求:[[lk.ucsc.research.BellyRunner [20](R 20.0)] osgi.wiring.package; (osgi.wiring.package=lk.ucsc.research.bellygraph)]

我的Maven项目结构如下,

|-Belly
  |-BellyGraph
  |-BellyRunner OSGi( dependencies: BellyGraph )

我也尝试添加<Embed-Dependency>BellyGraph</Embed-Dependency>。但它没有用。请帮我完成这个任务。完整的 POM 可以在 here on Github 找到。

【问题讨论】:

    标签: java maven osgi apache-felix osgi-bundle


    【解决方案1】:

    错误只是说您的 OSGi 运行配置缺少导出 lk.ucsc.research.bellygraph 包的包。 BellyRunner 包需要这个包来解决。

    我认为使用 maven 开始学习 OSGi 并不是一个好主意,因为许多重要的细节和概念都被“mvn install”魔法所掩盖。如果我在你身边,我会从 OSGi enRoute 教程开始:http://enroute.osgi.org/qs/050-start.html

    之后您可以探索如何在 maven 中执行此操作:http://enroute.osgi.org/tutorial_eval/050-start.html

    【讨论】:

      猜你喜欢
      • 2020-01-27
      • 2015-10-05
      • 2018-02-27
      • 2015-10-04
      • 2014-03-12
      • 2021-07-05
      • 2013-03-23
      • 2021-04-29
      • 2017-11-18
      相关资源
      最近更新 更多