Class 在 Junit 中未发现异常 (JAVA)
Class not found exception in Junit (JAVA)
我见过类似的问题,但都与 maven 有关(我没有使用 maven)。
我是 运行ning intellij 并且在库中添加了 Junit.jar 4.12。我可以创建测试方法和 类.
问题是,当我尝试 运行 我的 TestRunner() 主要方法时,我立即收到以下错误
Exception in thread "main" java.lang.ClassNotFoundException: TestRunner
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:122)
代码如下所示:
import junit.framework.TestSuite;
import org.junit.runner.JUnitCore;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;
public class TestRunner {
public static void main(String[] args) {
Result res = JUnitCore.runClasses(TestSuite.class);
for (Failure fail : res.getFailures()) {
System.out.println(fail.toString());
}
System.out.println(res.wasSuccessful());
}
}
让我感到困惑的是,我在 eclipse 中有完全相同的代码(用于之前的项目测试),并且在那里运行得非常好。
我错过了什么?
- 关闭并重新启动 intellij 无效。
- 重新导入库也没有任何改变。
更新,问题是我没有"Correctly" 添加库。显然在 Intellij 中,必须编写 @Test 然后点击 "Alt+enter" 以提示自动修复并选择以这种方式导入 JUnit 的选项。所以它会自动将它添加到类路径中。如果手动完成,它没有正确完成。
我见过类似的问题,但都与 maven 有关(我没有使用 maven)。 我是 运行ning intellij 并且在库中添加了 Junit.jar 4.12。我可以创建测试方法和 类.
问题是,当我尝试 运行 我的 TestRunner() 主要方法时,我立即收到以下错误
Exception in thread "main" java.lang.ClassNotFoundException: TestRunner
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:122)
代码如下所示:
import junit.framework.TestSuite;
import org.junit.runner.JUnitCore;
import org.junit.runner.Result;
import org.junit.runner.notification.Failure;
public class TestRunner {
public static void main(String[] args) {
Result res = JUnitCore.runClasses(TestSuite.class);
for (Failure fail : res.getFailures()) {
System.out.println(fail.toString());
}
System.out.println(res.wasSuccessful());
}
}
让我感到困惑的是,我在 eclipse 中有完全相同的代码(用于之前的项目测试),并且在那里运行得非常好。 我错过了什么?
- 关闭并重新启动 intellij 无效。
- 重新导入库也没有任何改变。
更新,问题是我没有"Correctly" 添加库。显然在 Intellij 中,必须编写 @Test 然后点击 "Alt+enter" 以提示自动修复并选择以这种方式导入 JUnit 的选项。所以它会自动将它添加到类路径中。如果手动完成,它没有正确完成。