无法使用 Httpclient-osgi-4.5.2。缺少要求

Cannot use Httpclient-osgi-4.5.2. Missing Requirements

我正在开发一个使用 Apache Felix 作为运行时的 OSGi 应用程序。我使用 Maven 下载 httpclient-osgi。我已经在框架中安装了捆绑包。但它会导致以下异常。

我似乎缺少一个导出 org.apache.httpcomponents.httpclient 的包。但我真的不知道哪个包会导出那个包。

org.osgi.framework.BundleException: Unable to resolve org.apache.httpcomponents.httpclient [3](R 3.0): missing requirement [org.apache.httpcomponents.httpclient [3](R 3.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.service.cm)(version>=1.3.0)(!(version>=2.0.0))) Unresolved requirements: [[org.apache.httpcomponents.httpclient [3](R 3.0)] osgi.wiring.package; (&(osgi.wiring.package=org.osgi.service.cm)(version>=1.3.0)(!(version>=2.0.0)))]
at org.apache.felix.framework.Felix.resolveBundleRevision(Felix.java:4111)
at org.apache.felix.framework.Felix.startBundle(Felix.java:2117)
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:998)
at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:984)
at compilerMain.Main.main(Main.java:39)

感谢您的回复

您缺少导出该包的包 org.osgi.service.cm。这意味着 httpclient 需要 ConfigurationAdmin 规范,可能还需要一个 运行 实例。解决此问题的最简单方法是安装 felix ConfigurationAdmin。