我正在做一个OSGi项目(我是个新手)。这是一个现有的源代码,所以我添加了一个名为"io.openems.edge.dieselgenerator“的新包,当我执行解析过程时,我发现它失败了,并显示以下消息:
Resolution failed. Capabilities satisfying the following requirements could not be found:
[<<INITIAL>>]
⇒ osgi.identity: (osgi.identity=io.openems.edge.dieselgenerator)
⇒ [io.openems.edge.dieselgenerator version=1.0.0.202107141719]
⇒ osgi.wiring.package: (osgi.wiring.package=io.openems.edge.simulator)
[osgi.cmpn version=7.0.0.201802012110]
⇒ osgi.unresolvable: (&(must.not.resolve=*)(!(must.not.resolve=*)))
[ch.qos.logback.classic version=1.2.3]
⇒ osgi.wiring.package: (&(osgi.wiring.package=ch.qos.logback.core.util)(version>=1.2.0)(!(version>=2.0.0)))
[org.eclipse.jetty.alpn.server version=9.4.35.v20201120]
⇒ osgi.wiring.package: (&(osgi.wiring.package=org.eclipse.jetty.alpn)(version>=1.1.3))我发现(osgi.wiring.package=io.openems.edge.simulator).有一个关于osgi.wiring.package的问题io.openems.edge.simulator是一个现有的包,我将其作为依赖项添加到新包中。知道发生了什么事吗?或者我应该提供更多我不知道的信息?
谢谢
发布于 2021-07-20 00:43:57
这条消息告诉您,安装在OSGi容器中的捆绑包都没有提供/导出您的捆绑包或其依赖项所需的包。
可能是您缺少提供org.eclipse.jetty.alpn包的包,也可能是您试图在包的依赖项可用之前安装包。
,或者我应该提供更多我不知道的信息?
如果其他人知道你的项目是如何设置的,以及你在哪里运行你的OSGi包,比如Apache Karaf、Eclipse IDE或其他地方,它可以帮助你。
https://stackoverflow.com/questions/68385905
复制相似问题