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

在Spring Boot中找不到Elasticsearch方法

姚自强
2023-03-14
问题内容

我已经在这个问题上停留了一段时间,我们将为您提供任何帮助。我正在运行2.2.0带有ElasticSearch高级REST客户端版本的Spring
Boot版本,6.4.3并将版本3.2.0用于Spring-Data-
Elasticsearch版本。我收到下面的错误。我已经尝试了以下修复方法,但没有解决。

  1. 多次更改Spring Boot版本
  2. 多次更改ES版本
  3. 我已经清除了.m2文件夹,并多次重新下载了Maven依赖项。

我下面遇到的问题是

试图调用一个不存在的方法。 尝试从以下位置进行:

org.springframework.data.elasticsearch.core.ElasticsearchRestTemplate.putMapping(ElasticsearchRestTemplate.java:292)

以下方法不存在:

org.elasticsearch.client.IndicesClient.putMapping(Lorg / elasticsearch /
action / admin / indices / mapping / put / PutMappingRequest; Lorg /
elasticsearch / client / RequestOptions;)Lorg / elasticsearch / action /
support / master / AcknowledgedResponse;

该方法的类org.elasticsearch.client.IndicesClient可从以下位置获得:

jar:文件:/Users/user/.m2/repository/org/elasticsearch/client/elasticsearch-
rest-high-level-client/6.4.3/elasticsearch-rest-high-level-client-6.4.3.jar!
/org/elasticsearch/client/IndicesClient.class

它是从以下位置加载的:文件:/Users/user/.m2/repository/org/elasticsearch/client/elasticsearch-
rest-high-level-client/6.4.3/elasticsearch-rest-high-level-client- 6.4.3.jar

行动: 更正您的应用程序的类路径,以使其包含org.elasticsearch.client.IndicesClient的单个兼容版本。

我的POM在下面

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.data</groupId>
        <artifactId>spring-data-elasticsearch</artifactId>
        <version>3.2.0</version>
    </dependency>

任何帮助表示赞赏。我确定它必须处理兼容性问题,但不能确定哪个。谢谢大家!

更新资料

通过将我的Elasticsearch版本更改为,我能够成功运行它6.7.0。但是现在我收到以下错误

org.elasticsearch.ElasticsearchStatusException: Elasticsearch exception [type=index_not_found_exception, reason=no such index]

我的POM现在也如下所示。

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

    <dependency>
        <groupId>org.elasticsearch.client</groupId>
        <artifactId>elasticsearch-rest-high-level-client</artifactId>
        <version>6.70</version>
    </dependency>

    <dependency>
        <groupId>org.elasticsearch.client</groupId>
        <artifactId>elasticsearch-rest-client</artifactId>
        <version>6.70</version>
    </dependency>

问题答案:

method that does not exist.通过将elasticsearch版本更改为,解决了上一期的问题6.7.0

为了避免这些不兼容问题,它始终建议使用相同版本的Elasticsearch服务器及其客户端。



 类似资料:
  • 我已经在这个问题上坚持了一段时间,感谢任何帮助。我正在运行弹性搜索高级REST客户端版本的Spring Boot版本,并在Spring Data-Elasticsearch版本中使用version。我得到下面的错误。我尝试了以下尝试来修复,但都没有。 多次更改Spring启动版本 多次更改ES版本 我已经结清了我的债务。m2文件夹并多次重新下载maven依赖项 我下面要讨论的问题是 试图调用不存在

  • 我正试图按照本教程将thymeleaf添加到springboot应用程序中,但我似乎无法让它工作。辅导的:http://spr.com/part-2-adding-views-using-thymeleaf-and-jsp-if-you-want/ 当我在LoginController中使用@RestController启动应用程序时,我能够让springstart正常工作,但是当我将@RestC

  • 我正在尝试创建一个简单的eureka服务和客户端程序,并在其上启用hystrix。但我在代码上发现了这个错误

  • 我正在利用spring elasticsearch数据创建文档、索引以及执行与查询相关的操作。根据spring elasticsearch数据指定的文档,我使用了最新的spring-data-elasticsearch=4.1.0-snapshot和弹性restclient和transport client版本=7.6.2。但我得到了下面提到的错误 我查看了docs-https://docs.sp

  • 我在Spring网站上跟踪这个SpringBoot演示,学习如何创建一个接受上传的文件。我收到一条错误消息: 我试图通过向FileUploadController添加注释来修复它。 我已尝试将以下依赖项添加到build.gradle 注意:我不想将数据库连接到此演示项目。这个演示确认它不是在这个演示中尝试连接数据库,而是在生产环境中尝试连接数据库。 我尝试在Storage Service接口上方添