【问题标题】:Unable to resolve 8.0: missing requirement [8.0] osgi.wiring.package;无法解决 8.0:缺少要求 [8.0] osgi.wiring.package;
【发布时间】:2016-09-01 14:26:42
【问题描述】:

我正在尝试添加码头客户端库并将其用作基于 Bnd OSGi 捆绑包的项目之一。添加库代码正在编译/构建但是当我运行“Bnd OSGi Run Launcher”时,我看到以下错误:

无法解析捆绑包: [com.project.examples-2.0.1.201605061319未解决的约束 bundle com.project.examples [8]:无法解析 8.0:缺少 要求 [8.0] osgi.wiring.package; (&(osgi.wiring.package=org.eclipse.jetty.client)(version>=9.3.0)(!(version>=10.0.0))) ]

我在 Java 构建路径库中添加了所需的码头客户端 jar 文件,还在类路径中添加了条目。仍然收到此错误。

感谢您的帮助

【问题讨论】:

  • Jetty 版本是否正确(至少 9.3.0 小于 10.0.0)?
  • 我的码头版本是jetty-9.3.8.v20160314

标签: java eclipse osgi osgi-bundle


【解决方案1】:

您需要将 Jetty Client 包安装到您的运行时 OSGi 框架中。

从您的问题来看,您似乎只是将它添加到您的构建路径或类路径中。

【讨论】:

  • 我已经为客户端文件 org.eclipse.jetty.client_9.3.6.v20151106.jar 和 org.eclipse.jetty.util_9.3.6.v20151106.jar 下载了 download.eclipse.org/jetty/updates/jetty-bundles-9.x/… jetty 包。我不确定如何在我的项目中安装它们
  • 这取决于你如何运行 OSGi。您如何将自己的包放入 OSGi 框架?只需对 Jetty 包做同样的事情。
【解决方案2】:

如果您使用OSGi enRoute 作为应用程序的起点,那么您可以开始使用 Bndtools 解析器。这将使这类问题更容易检测和处理。请参阅Quick Start 教程了解如何使用解析器构建应用程序。

【讨论】:

    猜你喜欢
    • 2019-09-15
    • 1970-01-01
    • 2015-08-09
    • 2017-03-16
    • 1970-01-01
    • 2015-05-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多