Hi all,
I tried on base of example
https://github.com/apache/karaf/blob/main/examples/karaf-itest-example/ in a
own project an integration test, set the dependencies in pom an with version
4.4.6 for karaf.
But man clean test throws:
org.ops4j.pax.exam.TestContainerException: java.lang.IllegalArgumentException:
Could not resolve version. Do you have a dependency for
org.apache.karaf/apache-karaf in your maven project?
at
org.ops4j.pax.exam.spi.reactors.ReactorManager.prepareReactor(ReactorManager.java:195)
at org.ops4j.pax.exam.junit.impl.ProbeRunner.<init>(ProbeRunner.java:78)
at org.ops4j.pax.exam.junit.PaxExam.createDelegate(PaxExam.java:82)
at org.ops4j.pax.exam.junit.PaxExam.<init>(PaxExam.java:73)
at
java.base/jdk.internal.reflect.DirectConstructorHandleAccessor.newInstance(DirectConstructorHandleAccessor.java:62)
at
java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:501)
at
java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:485)
at
org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:104)
at
org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:86)
at
org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
at
org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:37)
at
org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:70)
at
org.junit.internal.requests.ClassRequest.createRunner(ClassRequest.java:28)
at
org.junit.internal.requests.MemoizingRequest.getRunner(MemoizingRequest.java:19)
at
org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:314)
at
org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:240)
at
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:214)
at
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:155)
at
org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:385)
at
org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:162)
at
org.apache.maven.surefire.booter.ForkedBooter.run(ForkedBooter.java:507)
at
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:495)
Caused by: java.lang.IllegalArgumentException: Could not resolve version. Do
you have a dependency for org.apache.karaf/apache-karaf in your maven project?
at org.ops4j.pax.exam.MavenUtils.getArtifactVersion(MavenUtils.java:75)
at org.ops4j.pax.exam.MavenUtils$1.getVersion(MavenUtils.java:109)
at
org.ops4j.pax.exam.options.MavenArtifactUrlReference.version(MavenArtifactUrlReference.java:86)
at
org.ops4j.pax.exam.options.MavenArtifactUrlReference.versionAsInProject(MavenArtifactUrlReference.java:90)
at
org.apache.karaf.itests.KarafTestSupport.getKarafDistribution(KarafTestSupport.java:198)
at
org.apache.karaf.itests.KarafTestSupport.config(KarafTestSupport.java:241)
at
java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at
org.ops4j.pax.exam.spi.reactors.ReactorManager.addConfigurationsToReactor(ReactorManager.java:248)
at
org.ops4j.pax.exam.spi.reactors.ReactorManager.prepareReactor(ReactorManager.java:184)
... 21 more
Any hint?
In the pom I set
<!-- Karaf Testing: Support Tooling -->
<dependency>
<groupId>org.apache.karaf.itests</groupId>
<artifactId>common</artifactId>
<version>${karaf.version}</version>
<scope>test</scope>
</dependency>
<!-- Karaf Testing: Pax Exam Core -->
<dependency>
<groupId>org.ops4j.pax.exam</groupId>
<artifactId>pax-exam-junit4</artifactId>
<version>${pax-exam.version}</version>
<scope>test</scope>
</dependency>
<!-- Karaf Testing: Karaf Test Container -->
<dependency>
<groupId>org.ops4j.pax.exam</groupId>
<artifactId>pax-exam-container-karaf</artifactId>
<version>${pax-exam.version}</version>
<scope>test</scope>
</dependency>
<!-- Required to use shell commands in the tests -->
<dependency>
<groupId>org.apache.karaf.shell</groupId>
<artifactId>org.apache.karaf.shell.core</artifactId>
<version>${karaf.version}</version>
<scope>test</scope>
</dependency>
<!-- Karaf Testing: Karaf Distribution -->
<dependency>
<groupId>org.apache.karaf</groupId>
<artifactId>apache-karaf</artifactId>
<version>4.4.6</version>
<type>tar.gz</type>
<exclusions>
<exclusion>
<groupId>org.apache.karaf</groupId>
<artifactId>org.apache.karaf.client</artifactId>
</exclusion>
</exclusions>
<scope>test</scope>
</dependency>