当前位置: 首页 > 面试题库 >

用于JsonXContentGenerator的Elasticsearch 2.0 NoClassDefFoundError

司寇正志
2023-03-14
问题内容

我正在尝试将我的Elasticsearch Java客户端api版本从1.4.2更新到2.0.0。我正在使用Java 1.8。我使用以下代码:

   XContentBuilder builder = XContentFactory.jsonBuilder()

它曾经在1.4.2中工作,但在2.0.0中出现了这个异常:

   Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.elasticsearch.common.xcontent.json.JsonXContentGenerator
   at org.elasticsearch.common.xcontent.json.JsonXContent.newXContentGenerator(JsonXContent.java:69) ~[elasticsearch-2.0.0.jar:2.0.0]
   at org.elasticsearch.common.xcontent.json.JsonXContent.createGenerator(JsonXContent.java:74) ~[elasticsearch-2.0.0.jar:2.0.0]
   at org.elasticsearch.common.xcontent.json.JsonXContent.createGenerator(JsonXContent.java:80) ~[elasticsearch-2.0.0.jar:2.0.0]
   at org.elasticsearch.common.xcontent.XContentBuilder.<init>(XContentBuilder.java:112) ~[elasticsearch-2.0.0.jar:2.0.0]
   at org.elasticsearch.common.xcontent.XContentBuilder.<init>(XContentBuilder.java:102) ~[elasticsearch-2.0.0.jar:2.0.0]
   at org.elasticsearch.common.xcontent.XContentBuilder.builder(XContentBuilder.java:80) ~[elasticsearch-2.0.0.jar:2.0.0]
   at org.elasticsearch.common.xcontent.json.JsonXContent.contentBuilder(JsonXContent.java:40) ~[elasticsearch-2.0.0.jar:2.0.0]
   at org.elasticsearch.common.xcontent.XContentFactory.contentBuilder(XContentFactory.java:122) ~[elasticsearch-2.0.0.jar:2.0.0]
   at org.elasticsearch.common.xcontent.XContentFactory.jsonBuilder(XContentFactory.java:49) ~[elasticsearch-2.0.0.jar:2.0.0]

在pom.xml中:

   <dependency>
       <groupId>org.elasticsearch</groupId>
       <artifactId>elasticsearch</artifactId>
       <version>2.0.0</version>
   </dependency>

问题答案:

原因是我的依赖项列表中没有com.fasterxml.jackson.core,所以这导致了

        java.lang.ClassNotFoundException: com.fasterxml.jackson.core.util.DefaultIndenter

我将此添加到我的pom.xml中:

        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>2.6.3</version>
        </dependency>

问题解决了!



 类似资料:
  • 问题 我有一组客户端计算机,它们是企业web应用程序的一部分。每台机器运行相同的软件,这是一个连接到服务器的基于PYQT的web客户端。这个客户端软件是定期更新的,我希望有一些配置/供应工具,允许在每台机器上有相同的环境,从而提供软件在每个客户端机器上的轻松部署和配置。 是否可以使用Docker为基于GUI的应用程序(PyQt/Qt)提供开发/生产环境?如果是的话,要实现这一目标的第一步是什么?

  • 我对ESB或Biztalk不太熟悉,如果您已经拥有Biztalk,我正试图从EAI的角度了解什么是最有意义的。据我所知,Biztalk是一个消息代理(集线器和分支),ESB模式是一个反代理,其中概念上的“总线”由各个分布式组件组成,这些组件以某种方式相互通信。消息代理本质上代表单点故障,与ESB不同,ESB中的一个组件故障不会导致整个“总线”停机。我的理解是,Biztalk是单片的,因为消息传递、

  • 我有一个庞大的C源文件集,当编译时,这些文件将生成一个共享库。 还有一个Java版本使用JNA访问已经构建的c共享库。这些文件在另一个JAR中可用。此jar依赖于jna. 首先,我编译了c文件,然后编译了java代码。在java中,没有错误。只有当我试图将它移植到Android时,问题才会出现。我可以使用android的'ndk-build'工具轻松地编译c文件。这将成功创建共享库。 我无法在An

  • 这是我当前拥有的pom文件:http://maven.apache.org/xsd/maven-4.0.0.xsd“>4.0.0

  • 问题内容: 我正在尝试使用 ARMA ARIMA模型预测每周销售量。我找不到用于调整中的order(p,d,q)的函数。当前,R具有将调整(p,d,q)参数的功能。 如何为模型选择正确的顺序?python中有为此目的提供的任何库吗? 问题答案: 您可以实现多种方法: 包括和。根据它们的定义(请参阅此处和此处),这些条件会对模型中的参数数量造成不利影响。因此,您可以使用这些数字来比较模型。scipy

  • 我试图使用xpath点击“stackoverflow”主页上的“登录”链接,如下所示。但没有成功 驾驶员findElement(By.xpath(“//a[contains(text(),'log in')]”)。单击(); 请帮我解决我这里缺少的问题。 谢谢