Problem
Za każdym razem, gdy uruchamiam test JUnit moich projektów (używając JUnit 5 z Javą 9 i Eclipse Oxygen 1.a) napotykam problem polegający na tym, że eclipse nie może znaleźć żadnych testów.
Opis
W konfiguracji uruchamiania eclipse nie może nawet znaleźć metody, która jest oznaczona adnotacją @Test, a zamiast tego pokazuje mi tylko „ (wszystkie metody) ”. Mam nadzieję, że poniższy obraz daje lepsze spojrzenie na moją konfigurację:
Wyjście konsoli:
java.lang.NoClassDefFoundError: org/junit/platform/launcher/core/LauncherFactory
at org.eclipse.jdt.internal.junit5.runner.JUnit5TestLoader.<init>(JUnit5TestLoader.java:31)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.base/java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.base/java.lang.Class.newInstance(Unknown Source)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.createRawTestLoader(RemoteTestRunner.java:368)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.createLoader(RemoteTestRunner.java:363)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.defaultInit(RemoteTestRunner.java:307)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.init(RemoteTestRunner.java:222)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:206)
Caused by: java.lang.ClassNotFoundException: org.junit.platform.launcher.core.LauncherFactory
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
... 11 more
Czego próbowałem do tej pory
Już próbowałem
- aby usunąć folder testowy ze ścieżki budowania i dodać go ponownie.
- aby rozpocząć test od najechania kursorem na metodę z adnotacją @Test, a następnie kliknij „Uruchom jako test JUnit”.
- usuń JUnit z Buildpath i dodaj go ponownie
- uruchom ponownie zaćmienie
- Przeniosłem również cały projekt z jednej maszyny na inną i wypróbowałem go z dostarczoną tam instalacją eclipse
- aby zmienić nazwę metody badawczej.
- aby ponownie wpisać adnotację @Test
Niektóre z tych kroków można znaleźć tutaj , ale ostatecznie problem pozostał.