Eclipse中的JUnit 4给出的NullPointerException(Eclipse JU

2019-09-24 04:28发布

当我尝试运行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)

我使用的是OS X雪豹的Java SDK 1.6.0_35(苹果)。 无论JDK和JUnit 4是在我的构建路径。 有Java版本是与这个问题呢?

更新:

好吧,我是个白痴没有想到这一点。 我安装了Eclipse的C / C ++开发者,我不得不做一些C ++。 但我也使用了相同的情况下开发Android的Android SDK插件,我做了一些小的Java应用程序。 但是,我没有足够的Java开发工具或安装了Java EE开发工具。 我现在装他们和JUnit 4现在的作品。

我想这个工具之一,用于JUnit 4中,虽然奇怪的是JUnit 3中工作。 反正现在它工作。

谢谢大家的支持,虽然。

Answer 1:

好吧,我是个白痴没有想到这一点。 我安装了Eclipse的C / C ++开发者,我不得不做一些C ++。 但我也使用了相同的情况下开发Android的Android SDK插件,我做了一些小的Java应用程序。 但是,我没有足够的Java开发工具或安装了Java EE开发工具。 我现在装他们和JUnit 4现在的作品。



Answer 2:

我也有同样的问题,我重装了ADT从版本22.3到23,因为升级的问题。 如此看来,新版本ADT排除了“Java开发工具”。

您可以检查“帮助” - >“关于” - >“Installatoin详细信息”,了解详情。

于是我就用已有的朱诺升级网站在eclipse安装JDT(朱诺- http://download.eclipse.org/releases/juno ),在这之后,它工作正常。



Answer 3:

您导入org.junit.Test与类名冲突。 您可能要重命名你的类测试到例如ATEST得到:

java.lang.AssertionError: Not yet implemented
    at org.junit.Assert.fail(Assert.java:91)
    at ATest.test(ATest.java:8)

另一种选择可能是把测试包中(不使用默认包)

源代码:

import static org.junit.Assert.fail;
import org.junit.Test;

public class ATest {

    @Test
    public void test() {
        fail("Not yet implemented");
    }

}

与Eclipse朱诺测试的最大OS 10.8.0

java version "1.6.0_35"
Java(TM) SE Runtime Environment (build 1.6.0_35-b10-428-10M3811)
Java HotSpot(TM) Client VM (build 20.10-b01-428, mixed mode)

我敢肯定,这也将在狮子工作。



Answer 4:

解决的办法是,是的,正如你的UPDATE介绍,默认是JUnit 4中,还没有安装。 一旦更改为JUnit 3中,它的工作原理。



Answer 5:

我曾与Eclipse的霓虹灯同样的问题,新安装的,并与ADT(Android的,其中包括Java和正常安装的Junit)。

我刚安装JDT(Java开发工具),它后效果很好。



Answer 6:

我遇到过同样的问题! 只是重置角度(右单击 - >复位),也将努力!



文章来源: Eclipse JUnit 4 gives NullPointerException