Maven 捆绑包中的karaf(保险丝)未解决约束缺少需求osgi.wiring.package
我正在尝试安装一个依赖于另一个的包 当我试图通过maven(存储它的地方)安装它时,我得到以下错误:Maven 捆绑包中的karaf(保险丝)未解决约束缺少需求osgi.wiring.package,maven,osgi,apache-karaf,jbossfuse,Maven,Osgi,Apache Karaf,Jbossfuse,我正在尝试安装一个依赖于另一个的包 当我试图通过maven(存储它的地方)安装它时,我得到以下错误: install -s mvn:com.mycompany.er/ER_api/0.1218.0 Bundle ID: 544 Error executing command: Error installing bundles: Unable to start bundle mvn:com.mycompany.er/ER_api/0.1218.0: Unresolved constrain
install -s mvn:com.mycompany.er/ER_api/0.1218.0
Bundle ID: 544
Error executing command: Error installing bundles:
Unable to start bundle mvn:com.mycompany.er/ER_api/0.1218.0: Unresolved constraint in bundle com.mycompany.er.ER_api [544]:
Unable to resolve 544.0: missing requirement [544.0] osgi.wiring.package; (&(osgi.wiring.package=com.mycompany.application.errors)(version>=0.145.0)(!(version>=1.0.0)))
捆绑包显示为已安装:
[ 544] [Installed ] [ ] [ ] [ 60] ER_api (0.1218.0)
列出ER\u api
捆绑包的标题表明它确实依赖于com.mycompany.application.errors
,并以红色显示
Import-Package =
....
com.mycompany.application.errors;version="[0.145,1)",
据我了解,所需版本大于或等于0.145,但小于1。因此版本0.145.0应该满足这个标准
有问题的软件包com.mycompany.application.errors
位于捆绑包application\u app\u common
中,该软件包似乎已安装并处于活动状态:
[ 540] [Active ] [ ] [ ] [ 60] APPLICATION_app_common (0.145.0)
[ 511] [Active ] [ ] [ ] [ 60] ER_transactions_log (0.45.0.SNAPSHOT)
检查包是否已导出表明它是:
JBossFuse:karaf@root> headers 540
APPLICATION_app_common (540)
----------------------------
Manifest-Version = 1.0
Bnd-LastModified = 1459506884903
Tool = Bnd-1.50.0
....
Export-Package =
com.mycompany.application;version=0.145.0,
com.mycompany.application.errors;
uses:="javax.xml.bind.annotation,
javax.ws.rs.core,
com.mycompany.application.smapi";
version=0.145.0,
唯一使问题复杂化的是,它不是一个直接依赖,而是一个可传递的依赖<代码>ER_api取决于ER_事务日志
,后者取决于应用程序应用程序公用程序
。我已安装并激活了最新版本的ER\u transactions\u log
:
[ 540] [Active ] [ ] [ ] [ 60] APPLICATION_app_common (0.145.0)
[ 511] [Active ] [ ] [ ] [ 60] ER_transactions_log (0.45.0.SNAPSHOT)
我不明白为什么它看不到导出的包APPLICATION\u app\u common
在其导出包列表中清楚地列出了该包
我该如何调试它呢?我们可以为您的ER_api包查看
标题544
?您是否正在导入不同版本的javax.xml.bind或javax.ws.rs.core或com.mycompany.application.smapi?而且它不是可传递的依赖项,因为它是在导入包中声明的。您是否可以微调您的导入?我们是否可以查看ER_api捆绑包的标题544
?您是否正在导入不同版本的javax.xml.bind或javax.ws.rs.core或com.mycompany.application.smapi?而且它不是可传递的依赖项,因为它是在导入包中声明的。你能调整一下你的进口吗?