大同考试:具有所有依赖性供应束(Pax Exam: provisioning bundle with

2019-10-16 15:07发布

目前,建立配置大同考试,我发现我需要包括所有的依赖关系。 例如像

@Configuration
public Option[] сonfig() {
    MavenArtifactProvisionOption commonsDbcp = mavenBundle("commons-dbcp",
            "commons-dbcp");
    MavenArtifactProvisionOption commonsPool = mavenBundle("commons-pool",
            "commons-pool");
    ...
    return options(
            felix(),
            provision(commonsDbcp, commonsPool));
}

但由于commons-dbcp依靠commons-pool ,这种感觉就像重复的信息。 是否有可能为大同考试弄清楚, commons-dbcp没有明确地将它添加需要的?

Answer 1:

并不是的...

  • 不是一个OSGi包的每Maven的依赖是一个OSGi包。
  • 依赖关系可以是一个接口而已,而在运行时,要提供一个实现捆绑来代替。

列出所有包明确是供应的架构的唯一可靠途径。 至少,你可以使用versionAsInPom()选项的方法来避免重复工件版本。



文章来源: Pax Exam: provisioning bundle with all dependencies
标签: pax-exam