美好的一天。
我试图在我的应用程序中获得OBR的好处。我把Karaf Cave(4.0.0)作为OBR实现,将org.apache.felix.bundlerepository(2.0.4)作为OBR客户端。我成功配置了存储库本身,但我无法正确使用它。 问题是:当我通过OBR安装捆绑包并且其所有依赖项已经安装在OSGI运行时中时,它已成功安装。但是如果缺少某些要求,我会得到一个“不满意的要求”错误,这很奇怪,因为我确信所有解决这些要求的资源都存在于OBR描述符中,并且所有链接都是有效的。< / p>
为什么不自动解决?如何配置OBR客户端与Karaf Cave合作?
我还尝试了Sonatype Nexus(OBR插件)的OBR实现,发现Cave生成的OBR描述符和Nexus生成的OBR描述符不同。此外:
我完全糊涂了。
重现问题的步骤顺序(在Apache Karaf 4.0.0上重现):
1)安装卡拉夫洞穴:
feature:repo-add cave
feature:install cave-server cave-http
2)创建洞穴存储库:
cave:create-repository test
cave:proxy-repository test file:///path/to/some/local/maven/repo
3)安装OBR客户端并从Karaf注册“test”洞穴存储库:
feature:install obr
obr:url-add http://localhost:8181/cave/http/test-repository.xml
4)尝试使用obr:deploy
部署一些OBR资源