我正在玩OSGi。根据我的理解,为了安装和启动捆绑包,您需要已经解决了它的依赖关系。由于手动安装其直接(和直接)依赖关系可能很痛苦,因此引入了OBR。
我正在使用Felix作为OSGi框架实现,我想通过OBR(即guava库)自动解析我的bundle的依赖项。出于这个原因,我在客户端使用org.apache.felix.bundlerepository
。
我不确定服务器端要做什么。我找不到有关该做什么的可靠信息。我确信Felix可以在服务器上轻松配置,以便充当“OBR服务器”,但我不知道该怎么做。 你能请我帮帮我吗?代码将受到高度赞赏。如果您不能发布代码,至少可以告诉我成功设置存储库所需的一般步骤(或链接资源)(例如felix框架或实现此类功能的其他软件所需的包)。
我现在的设置:
感谢您的回复!
答案 0 :(得分:1)
Sonartype Nexus 2.13有一个OBR插件,允许您提供与OBR兼容的存储库。它还可以用于代理现有的Maven存储库。
但是,在设置自己的存储库之前,您可能还需要查看bndtools及其解决依赖关系的方法。 Bndtools还允许您依赖不明确支持OBR的现有Maven存储库。有一个guide on how to work with Maven,它解释了他们的方法。
答案 1 :(得分:1)
OBR存储库的“服务器端”只包含一个索引文件,该文件又包含指向包的URL链接。您可以在没有任何特殊服务器软件的情例如,Apache或Nginx HTTP服务器就足够了。
答案 2 :(得分:0)
Karaf Cave提供OSGI Bundle Repository。