4

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

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

4

2 回答 2

3

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

于 2012-12-18T13:31:00.773 回答
2

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

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

于 2012-11-27T17:35:03.747 回答