【问题标题】:JUnit4 + Eclipse "An internal error occurred during Launching"JUnit4 + Eclipse“启动期间发生内部错误”
【发布时间】:2009-08-09 03:28:54
【问题描述】:

我正在尝试在 Eclipse 3.4.2 上运行 JUnit4 测试用例,但它甚至还没有开始。我的构建路径和测试应用程序中有 junit-4.7.jar。

这是一个简单的例子来说明我的问题

package test;
import org.junit.Before;
import org.junit.Test;

public class UTest {    
    @Test
    public void test() {
    }

    @Before
    public void setUp() throws Exception {
    }
}

这编译得很好

然后我从 Eclipse 中执行“运行 JUnit 测试用例”,然后我收到一个错误对话框并显示此消息

"Launching UTest' has encountered a problem
An internal error occurred during: "Launching UTest".
java.lang.NullPointerException

是什么导致了这些 NullPointerExceptions?我做错了什么?

【问题讨论】:

    标签: java eclipse junit


    【解决方案1】:

    尝试一切后对我有用的方法:

    1. 去帮忙
    2. 安装新软件
    3. 与:朱诺合作
    4. 编程语言(展开)
    5. 安装 Java 开发工具
    6. 重启

    它有效:)

    【讨论】:

    • 我必须安装的包的名称是 Eclipse Java Development Tools 而不仅仅是 Java Development Tools
    • @Sam 更新网址是什么?我已经有了带有 ADT 23.0.2 的 Juno。
    • @devo 更新站点已经自带 Eclipse。只需打开下拉菜单即可找到它。
    • 这就是答案。似乎是 ADB 包的问题,​​它不知何故不包括 Java 开发工具。 Eclipse 中再次出现无意义的错误。
    • 在火星上也能工作,即使是在基于 Eclipse 的 IDE 上(Progress Development Studio;别问)。
    【解决方案2】:

    我可以通过删除工作区和 Eclipse 目录并重新开始来解决这个问题。

    【讨论】:

    • 你是重新导入项目,还是手动拖拽文件重新构建?听起来很多工作只是避免问题,并没有解决问题。
    • 是的,您必须手动导入所有文件,但您的 Eclipse 编辑器设置将会更改。
    【解决方案3】:

    这对我有用:

    1. 创建测试类的另一个副本 (CopyOfUTest.java)
    2. 运行副本以确保它通过
    3. 进入运行 > 运行配置
    4. 在JUnit下,找到原类和复制类的运行配置
    5. 右键删除原类的配置
    6. 将复制的类的配置重命名为原来的配置名称
    7. 从项目中删除复制的类

    【讨论】:

    • 这对我不起作用;问题的范围似乎不仅仅是单个测试类。
    【解决方案4】:

    这里给出的答案都不适合我,所以我最终只是安装和使用InfiniTest。它没有这个问题,而且它还会自动运行测试,所以我可以专注于我的工作。

    【讨论】:

    • 你摇滚!这是使用 ADT 23+ 时唯一对我有用的东西!
    • @HughB 你知道为什么普通的 JUnit4 不能在这里工作吗?你有什么修复吗?
    • @devo,我不知道为什么会出现这个问题,但this answer 中的修复对我有用。
    • @devo - 我最终能够让我的 Junit 测试独立于 Infinitest 运行,方法是转到 Run Configurations、Classpath 选项卡,然后从 Bootstrap Entries 中删除 Android 4.4.2 以进行测试。
    • @HughB 谢谢,我也正在使用Infinitest 进行测试。
    【解决方案5】:

    您查看过 Eclipse 错误日志吗?您可以通过打开“错误日志”视图来查看它。

    http://help.eclipse.org/help32/topic/org.eclipse.pde.doc.user/guide/tools/views/error_log.htm

    【讨论】:

    • 找不到该视图。问题视图无关,这是一个 Eclipse INTERNAL 错误,问题视图只显示项目中的错误。
    • 我说的是错误视图...不是问题视图。
    • +1 很好,错误日志显示错误的详细信息。您可以根据错误日志进行修复。
    • “我没有错误视图” - 您可以在 Window > Show View > General > Error Log 中找到它。
    【解决方案6】:

    如果您还使用 Android 开发工具包插件,可能会在 eclipse 中出现此错误:

    "Launching UTest' has encountered a problem
        An internal error occurred during: "Launching UTest".
        java.lang.NullPointerException
    

    如果您将普通 Java 项目加载到安装并启用了 android ADT 插件的 Eclipse 实例中,可能会导致此问题。在这种情况下,Eclipse 会查找“Android”项目文件,但没有找到。所以它说:“NullPointerException”。

    所以要修复它,重新下载没有 ADT 插件的 Eclipse:https://www.eclipse.org/downloads/

    然后重新导入您的项目。并且junit测试运行没有问题。

    许多人讨厌 Eclipse,因为它具有神秘的错误信息。就像我们回到了 1950 年代的打卡世界,没有错误信息。程序只是停止并发生未定义的行为。

    【讨论】:

      【解决方案7】:

      谢谢,这也解决了我的问题。 当我删除一个旧模拟器并创建一个新模拟器时,问题就开始了。 修复:就像 OP 说的删除工作区,确保将项目保留在其中:) 然后将它们导入回eclipse “听起来工作量很大”? 花了我不到半分钟的时间!!!

      【讨论】:

        【解决方案8】:

        如果您使用的是 Android 及其相关插件,则 Android 仅支持 JUnit 3。

        我通过选择 Test Runner 作为 JUnit 3 解决了这个问题。

        在我的班级中,JUnit 4 被添加到构建路径->库中。

        然后要运行测试文件,请转到:Run As -> Run Configurations 然后选择相应的 test.java 文件并相应地选择 Test Runner(无论是 JUnit 3 还是 4)。

        【讨论】:

          【解决方案9】:

          您的代码对我来说很好用。

          日食 版本:3.4.1 内部版本号:M20080911-1700

          我右键单击 .java 文件 RunAs JUnit Test。这表明问题是由 Eclipse 配置问题引起的,而不是代码问题。

          【讨论】:

            【解决方案10】:

            我遇到了类似的问题,但我使用的是 Python。这是我为解决/避免它所做的:

            1. 从 Eclipse 中删除了我的 .project 文件和项目。
            2. 再次创建项目。
            3. 一切正常。

            问题似乎出在 .project 文件中,其中有一些对 CDT Builder 的引用,而新的 .project 文件中则没有。

            【讨论】:

              猜你喜欢
              • 2019-09-06
              • 2020-08-09
              • 1970-01-01
              • 2014-01-28
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2018-02-12
              相关资源
              最近更新 更多