gpt4 book ai didi

java - Eclipse 因 LauncherFactory 的 NoClassDefFoundError 导致使用 JUnit 5 未找到测试

转载 作者:行者123 更新时间:2023-12-01 19:34:04 26 4
gpt4 key购买 nike

问题

每当我运行项目 JUnit 测试(使用 JUnit 5 和 Java 9 和 Eclipse Oxygen 1.a)时,我都会遇到 eclipse 找不到任何测试的问题。

描述

在运行配置下,eclipse甚至找不到用@Test注释的方法,而只显示“(所有方法)”。希望下图可以更好地展示我的设置:

https://imgur.com/a/FTe9c

控制台输出:

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

到目前为止我尝试过的内容

我已经尝试过了

  • 从构建路径中删除测试文件夹并再次添加。
  • 将鼠标悬停在用 @Test 注释的方法上开始测试,然后单击“Run as JUnit Test”。
  • 从 Buildpath 中删除 JUnit 并再次添加
  • 重新启动eclipse
  • 我还将项目整个项目从一台计算机移动到另一台计算机,并使用那里提供的 eclipse 安装进行了尝试
  • 重命名测试方法。
  • 重新输入@Test注释

其中一些步骤 can be found here ,但最终问题依然存在。

最佳答案

我通过右键单击测试并选择“运行配置”并将“测试运行程序:”选择更改为“JUnit 4”解决了该问题,如下所示:

Screenshot of run configruations

我再次运行测试,结果成功了。

关于java - Eclipse 因 LauncherFactory 的 NoClassDefFoundError 导致使用 JUnit 5 未找到测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59237520/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com