【问题标题】:java.lang.NoClassDefFoundError: org/elasticsearch/script/mustache/SearchTemplateRequestjava.lang.NoClassDefFoundError: org/elasticsearch/script/mustache/SearchTemplateRequest
【发布时间】:2020-08-21 23:37:31
【问题描述】:

我正在尝试使用 java 程序中的 RestHighLevelClient 访问 Amazon Elasticsearch 实例。以下是我的代码:

AWS4Signer signer = new AWS4Signer();
signer.setServiceName("es");
signer.setRegionName("us-east-1");
HttpRequestInterceptor interceptor = new AWSRequestSigningApacheInterceptor("es", signer, creds);            

RestHighLevelClient EsClient = new RestHighLevelClient(RestClient.builder(new HttpHost("hostname.us-east-1.es.amazonaws.com",443,"https"))
.setHttpClientConfigCallback(httpAsyncClientBuilder -> HttpAsyncClientBuilder
.create()
.addInterceptorLast(interceptor)));

当我运行这段代码时,我看到了这个错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/elasticsearch/script/mustache/SearchTemplateRequest
    at Main.main(Main.java:194)
Caused by: java.lang.ClassNotFoundException: org.elasticsearch.script.mustache.SearchTemplateRequest
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 1 more

这发生在EsClient 的初始化时。该错误表明缺少依赖项,但我的类路径中有org.elasticsearch.script。但是,它似乎没有mustache.SearchTemplateRequest。以下是我添加到项目中的相关依赖项:

不确定我在这里缺少什么。任何帮助,将不胜感激。谢谢。

【问题讨论】:

    标签: java elasticsearch amazon-elasticsearch


    【解决方案1】:

    我错过了下面的罐子:

    <!-- https://mvnrepository.com/artifact/org.elasticsearch.plugin/lang-mustache-client -->
    <dependency>
        <groupId>org.elasticsearch.plugin</groupId>
        <artifactId>lang-mustache-client</artifactId>
        <version>7.6.2</version>
    </dependency>
    

    我必须添加其他几个罐子才能最终使其正常工作。

    【讨论】:

    • 您可以选择自己的答案顺便说一句。它有助于从未回答的队列中删除您的问题。显然这对其他人有用,因此值得保留。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-02
    • 2013-01-10
    • 1970-01-01
    相关资源
    最近更新 更多