当我尝试运行 JUnit 4 测试时,我在 Eclipse 中得到 NullPointerException。JUnit3 虽然有效。
我正在尝试以下测试类:
import static org.junit.Assert.fail;
import org.junit.Test;
public class Test {
@Test
public void test() {
fail("Not yet implemented");
}
}
这是异常堆栈跟踪:
java.lang.NullPointerException
at org.eclipse.jdt.junit.launcher.JUnitLaunchConfigurationDelegate$ClasspathLocalizer.localURL(JUnitLaunchConfigurationDelegate.java:420)
at org.eclipse.jdt.junit.launcher.JUnitLaunchConfigurationDelegate$ClasspathLocalizer.entryString(JUnitLaunchConfigurationDelegate.java:409)
at org.eclipse.jdt.junit.launcher.JUnitLaunchConfigurationDelegate$ClasspathLocalizer.addEntry(JUnitLaunchConfigurationDelegate.java:396)
at org.eclipse.jdt.junit.launcher.JUnitLaunchConfigurationDelegate$ClasspathLocalizer.localizeClasspath(JUnitLaunchConfigurationDelegate.java:387)
at org.eclipse.jdt.junit.launcher.JUnitLaunchConfigurationDelegate.getClasspath(JUnitLaunchConfigurationDelegate.java:364)
at org.eclipse.jdt.junit.launcher.JUnitLaunchConfigurationDelegate.launch(JUnitLaunchConfigurationDelegate.java:147)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:855)
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:704)
at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:1047)
at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(DebugUIPlugin.java:1251)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:53)
我正在使用带有 Java SDK 1.6.0_35(来自 Apple)的 OS X Snow Leopard。JDK 和 JUnit 4 都在我的构建路径中。Java版本与问题有关吗?
更新:
好吧,我是个白痴,没想到这一点。我为 C/C++ 开发人员安装了 Eclipse,因为我必须在 C++ 中做一些事情。但我也使用同一个实例为 Android 开发了 Android SDK 插件,并做了一些小的 Java 应用程序。但是我没有安装 Java 开发工具或 Java EE 开发工具。我现在安装了它们,JUnit 4 现在可以工作了。
我想其中一个工具用于 JUnit 4。奇怪的是 JUnit 3 工作。无论如何,它现在有效。
不过还是谢谢大家的支持。