ops4j / org.ops4j.pax.exam2

Pax Exam is a testing framework for OSGi
https://ops4j1.jira.com/wiki/spaces/PAXEXAM4/
Apache License 2.0
84 stars 100 forks source link

Make Pax Exam compatible with JUnit 4.13 #1072

Open oliverlietz opened 1 year ago

oliverlietz commented 1 year ago
java.lang.IncompatibleClassChangeError: class org.ops4j.pax.exam.invoker.junit.internal.ContainerTestRunnerClassRequest overrides final method org.junit.internal.requests.MemoizingRequest.getRunner()Lorg/junit/runner/Runner;
    at java.base/java.lang.ClassLoader.defineClass1(Native Method)
    at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1012)
    at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.defineClass(BundleWiringImpl.java:2338)
    at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.defineClassParallel(BundleWiringImpl.java:2156)
    at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.findClass(BundleWiringImpl.java:2090)
    at org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1556)
    at org.apache.felix.framework.BundleWiringImpl.access$300(BundleWiringImpl.java:79)
    at org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1976)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
    at org.ops4j.pax.exam.invoker.junit.internal.JUnitProbeInvokerFactory.createProbeInvoker(JUnitProbeInvokerFactory.java:36)
    at org.ops4j.pax.exam.raw.extender.intern.Parser.createInvoker(Parser.java:94)
    at org.ops4j.pax.exam.raw.extender.intern.Parser.make(Parser.java:81)
    at org.ops4j.pax.exam.raw.extender.intern.Parser.<init>(Parser.java:67)
    at org.ops4j.pax.exam.raw.extender.intern.TestBundleObserver.addingEntries(TestBundleObserver.java:69)
    at org.ops4j.pax.swissbox.extender.BundleWatcher$3.run(BundleWatcher.java:226)
    at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
    at java.base/java.lang.Thread.run(Thread.java:833)