gpt4 book ai didi

java - ElasticsearchIntegrationTest 失败并出现 NullPointerException

转载 作者:行者123 更新时间:2023-11-30 03:12:51 24 4
gpt4 key购买 nike

我正在为我正在从事的项目使用elasticsearch,但不幸的是,测试设置遇到了非常令人沮丧的问题。

我有一个如下所示的测试类

import org.elasticsearch.test.ElasticsearchIntegrationTest;
import org.junit.Test;

public class JavaTest extends ElasticsearchIntegrationTest {

@Test
public void testSomething() throws Exception {

}
}

这是我的 build.sbt

  "org.elasticsearch" % "elasticsearch" % "1.7.2" % "test" classifier "tests",
"com.carrotsearch.randomizedtesting" % "randomizedtesting-runner" % "2.1.17" % "test",
"org.elasticsearch" % "elasticsearch" % "1.7.2",
"org.apache.lucene" % "lucene-test-framework" % "4.10.4" % "test",
"org.hamcrest" % "hamcrest-all" % "1.3"

这是控制台的输出

Oct 21, 2015 4:20:27 PM com.carrotsearch.randomizedtesting.RandomizedRunner runSuite
SEVERE: Panic: RunListener hook shouldn't throw exceptions.
java.lang.NullPointerException
at org.elasticsearch.test.junit.listeners.LoggingListener.testRunStarted(LoggingListener.java:50)
at com.carrotsearch.randomizedtesting.RandomizedRunner.runSuite(RandomizedRunner.java:639)
at com.carrotsearch.randomizedtesting.RandomizedRunner.access$200(RandomizedRunner.java:140)
at com.carrotsearch.randomizedtesting.RandomizedRunner$2.run(RandomizedRunner.java:587)

我不知道这里发生了什么,文档告诉我只需继承 ElasticsearchIntegrationTest 类,我就可以开始了。

有人知道这里发生了什么吗?有关此错误的信息非常少,我没有找到任何有用的信息。

最佳答案

您的测试类是否位于默认包中?

NPE 发生在 LoggingListener.java:50 (如您的堆栈跟踪所示)。该行包含以下代码:

previousPackageLoggingMap = processTestLogging(description.getTestClass().getPackage().getAnnotation(TestLogging.class));

如果您的测试类位于默认包中(例如,您的类中没有 package 语句),则调用 getPackage() 将返回 null - 从而导致NPE。解决方法是将测试移至包中。

关于java - ElasticsearchIntegrationTest 失败并出现 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33262117/

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