【问题标题】:Cannot start OSGi bundle, missing com.ibm.uvm.tools无法启动 OSGi 包,缺少 com.ibm.uvm.tools
【发布时间】:2012-11-15 03:35:24
【问题描述】:

我正在尝试创建一个包含大量依赖项的捆绑包。我收到错误 could not be resolved. Reason: Missing Constraint: Import-Package: com.ibm.uvm.tools,但在 maven 存储库或网络上找不到这个包。通过在 Import-Package 指令中标记这个包(和一堆其他包)为可选,我可以解析包,但如果不满足依赖项,它将无法启动。我可以做些什么来解决这个导入包?

我正在使用 maven-bundle-plugin 生成包。

【问题讨论】:

  • 您要安装什么捆绑软件?当您将包设为可选时,您会遇到什么错误?当我用谷歌搜索“uvm tool”时,谷歌实际上会建议你正在寻找的包,所以我真的很想知道你怎么找不到任何东西。

标签: java maven osgi maven-bundle-plugin osgi-bundle


【解决方案1】:

您已经在类路径中使用几个 jar 构建了您的包。否则,您的包将不会引用名为 com.ibm.uvm.tools 的包中的任何内容。现在您需要查看此 jar 是否支持 OSGi(指定正确的标头和包导出)。也许还存在那个 jar 的“OSGi-fied”版本,例如查看the springsource repository

查看包名,我假设可能无法找到的专有代码重新包装在任何公共存储库中,然后您可以尝试自己将其包装为一个包,看看at this stackoverflow question

【讨论】:

    【解决方案2】:

    解决方案是使用 OSGified 版本的 log4j 作为提供的依赖项。我把它作为一个编译的依赖项。 Log4j manifest 提到这个包是一个可选的依赖,所以 maven-bundle-plugin 将它添加到我的包的清单中,但没有使它成为可选的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-05-06
      • 2017-09-26
      • 2015-07-28
      • 2017-03-24
      • 2013-12-29
      • 2015-02-12
      • 1970-01-01
      相关资源
      最近更新 更多