gpt4 book ai didi

java - 包使用冲突 : Import-Package: de. foo.bar;版本 ="0.0.0"

转载 作者:行者123 更新时间:2023-11-29 06:20:07 25 4
gpt4 key购买 nike

我尝试在 OSGi 环境 (FUSE ESB) 中安装一个包,但未能成功解决。错误信息是:

The bundle could not be resolved. Reason: Package uses conflict: Import-Package: de.foo.bar; version="0.0.0"

我的包导入包 de.foo.bar。导出包 de.foo.bar 的包使用“uses”指令执行此操作。

Export-Package = de.foo.bar;uses:="{other packages}";version="2.4.0"

据我所知,我必须确保我的包必须导入 de.foo.bar 包(在正确的版本中)的“uses”指令中提到的所有其他包。

我检查了这个并尝试了几个版本更改(0.0.0 和真实版本号)但无法让它工作。

那么,错误消息的真正含义是什么(也许我理解错了)?我需要检查什么?

感谢您的帮助

克劳斯


系统信息:

最佳答案

终于找到问题了

我的包是一个 Spring 动态模块包,我在 spring bean 配置中犯了一个错误(在构造函数参数中使用“ref”而不是“value”)。通常 spring 配置错误是这样报告的——我不知道为什么当前错误会导致误导性消息。

编辑:

错误的 Spring 配置不会导致使用冲突。最后是导入包 org.apache.log4j,它由不同的包导出(在我的 FUSE ESB 容器中),显然与我尝试安装的包不同。

为了解决我的问题,我找到了文章 Diagnosing OSGi uses conflicts我发现这有助于理解问题。

关于java - 包使用冲突 : Import-Package: de. foo.bar;版本 ="0.0.0",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3466379/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com