我有这个疯狂的想法,因为很长一段时间所以决定最后问。是否有一些项目可以将bundle直接集成到构建过程中,而无需显式执行包含osgi容器和添加bundle等的额外工作。因此,在build.sbt或pom.xml中的基本思想就是像通常那样指定依赖项do而不是获取jar,sbt或mvn为你的依赖项提取bundle(如果可用)。在构建项目时,将下载您选择的容器,并自动将捆绑(和罐子)添加到其中?就像一个童话故事。
编辑:在最后一部分,我的意思是felix gogo的内容,它将创建一个脚本,用于添加捆绑包以运行容器。 Althogh太多了,但是在构建之后我可以运行一个脚本而我的整个项目将在一个没有jar地狱的osgi容器上运行。
答案 0 :(得分:1)
今天已经有效了。您只需使用maven bundle plugin在构建过程中创建一组代码。 maven中心的许多罐子已经捆绑了。所以你只需将它们指定为普通依赖项。
我不确定你想要在最后一部分实现什么目标。下载容器并添加捆绑包。构建过程只是创建了jar。为什么要加载容器?
如果您想进行测试,那么pax exam就是您搜索的内容。它完全符合您对单元测试所描述的内容。它下载容器,添加捆绑包并部署并在容器中运行测试。