编程语言
首页 > 编程语言> > java – Pax Exam / Karaf – 在测试设置上安装功能

java – Pax Exam / Karaf – 在测试设置上安装功能

作者:互联网

我正在尝试集成测试Karaf功能与Pax考试,但我无法解决如何在我的config()方法中安装功能.

Pax考试版本为2.6.0,Apache Karaf 2.3.2版本.

这是我的配置方法:

@Configuration
public Option[] config() {
    return new Option[]{karafDistributionConfiguration().frameworkUrl(
            maven().groupId("org.apache.karaf").artifactId("apache-karaf").type("zip").versionAsInProject())
            .karafVersion("2.3.2").name("Apache Karaf").unpackDirectory(new File("target")),
            keepRuntimeFolder()};
}

单个捆绑包可以使用mavenBundle(“组”,“工件”,“版本”)安装,但似乎没有机制来安装Pax考试的Karaf功能.

我能够在使用Junit @Before注释的设置方法中以实用方式安装功能,但是使用@Inject注入我的服务为时已晚.

是否可以在Pax考试测试的config()方法中安装Apache Karaf功能?

解决方法:

首先,我强烈建议使用最新版本的Pax-Exam(3.3.0),它确实提供开箱即用的Karaf支持.
其次,您可以直接在config()方法中安装功能.
例如:

features(maven().groupId("org.apache.karaf.assemblies.features")
       .artifactId("standard").type("xml").classifier("features")
       .versionAsInProject(), "http-whiteboard")

你会在我的github找到一份工作样本

标签:apache-karaf,java,osgi,pax-exam
来源: https://codeday.me/bug/20190725/1532489.html