我正在尝试启动一个包含大量依赖项的捆绑包。我收到错误消息could not be resolved. Reason: Missing Constraint: Import-Package: com.ibm.uvm.tools
,但在 maven 存储库或网络上找不到这个包。通过在 Import-Package 指令中标记这个包(和一堆其他包)为可选,我可以解析包,但如果不满足依赖项,它将无法启动。我能做些什么来解决这个导入包?
我正在使用 maven-bundle-plugin 来生成包。
我正在尝试启动一个包含大量依赖项的捆绑包。我收到错误消息could not be resolved. Reason: Missing Constraint: Import-Package: com.ibm.uvm.tools
,但在 maven 存储库或网络上找不到这个包。通过在 Import-Package 指令中标记这个包(和一堆其他包)为可选,我可以解析包,但如果不满足依赖项,它将无法启动。我能做些什么来解决这个导入包?
我正在使用 maven-bundle-plugin 来生成包。
解决方案是使用 OSGified 版本的 log4j 作为提供的依赖项。我把它作为一个编译的依赖项。Log4j manifest 提到这个包是一个可选的依赖,所以 maven-bundle-plugin 将它添加到我的包的清单中,但没有使它成为可选的。
您已经在类路径上使用几个 jar 构建了您的包。否则,您的包将不会引用名为com.ibm.uvm.tools
. 现在您需要查看此 jar 是否支持 OSGi(指定正确的标头和包导出)。也许还存在该 jar 的“OSGi-fied”版本,例如查看springsource 存储库。
查看包名称,我假设可能无法在任何公共存储库中重新包装的专有代码,然后您可以尝试自己将其包装为一个包,看看这个 stackoverflow 问题。