当前位置: 首页 > 知识库问答 >
问题:

在Spring引导中找不到Elasticsearch方法

富凯旋
2023-03-14

我已经在这个问题上坚持了一段时间,感谢任何帮助。我正在运行弹性搜索高级REST客户端版本的Spring Boot版本2.2.0,并在Spring Data-Elasticsearch版本中使用version3.2.0。我得到下面的错误。我尝试了以下尝试来修复,但都没有。

  1. 多次更改Spring启动版本
  2. 多次更改ES版本
  3. 我已经结清了我的债务。m2文件夹并多次重新下载maven依赖项

我下面要讨论的问题是

试图调用不存在的方法。试图从以下地点进行:

组织。springframework。数据弹性搜索。果心弹性模板。putMapping(ElasticsearchRestTemplate.java:292)

以下方法不存在:

组织。弹性搜索。客户指示客户。putMapping(Lorg/elasticsearch/action/admin/Index/mapping/PutMappingRequest;Lorg/elasticsearch/client/RequestOptions;)Lorg/elasticsearch/action/support/master/AcknowledgedResponse;

方法的类org。弹性搜索。客户IndicateSClient可从以下位置获得:

jar:file:/Users/user/。m2/repository/org/elasticsearch/client/elasticsearch rest高级客户端/6.4。3/elasticsearch-rest-high-level-client-6.4。3.jar/org/elasticsearch/client/indicatesclient。班

它是从以下位置加载的:文件:/Users/user/。m2/repository/org/elasticsearch/client/elasticsearch rest高级客户端/6.4。3/elasticsearch-rest-high-level-client-6.4。3.jar

操作:纠正应用程序的类路径,使其包含单个兼容版本的org.elasticsearch.client.SignesClient

我的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>

共有2个答案

强志学
2023-03-14

我面临着完全相同的问题,我使用的是弹性搜索6.8.18。

ext['elasticsearch.version'] = '6.8.18'

将其用于引用-覆盖依赖项版本

施彬郁
2023-03-14

以前发行的方法不存在 通过将elasticsearch版本更改为6.7解决。0

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

 类似资料:
  • 问题内容: 我已经在这个问题上停留了一段时间,我们将为您提供任何帮助。我正在运行带有ElasticSearch高级REST客户端版本的Spring Boot版本,并将版本用于Spring-Data- Elasticsearch版本。我收到下面的错误。我已经尝试了以下修复方法,但没有解决。 多次更改Spring Boot版本 多次更改ES版本 我已经清除了.m2文件夹,并多次重新下载了Maven依赖

  • 我试图找出一种最简单的方法来控制基本Spring Boot RESTful服务的404 Not Found处理程序,例如Spring提供的示例: https://spring.io/guides/gs/rest-service/ 而不是让它返回默认的Json输出: 或者有比抛出并处理NoHandlerFoundException更好的方法吗?

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

  • 我有一个用于使用elasticsearch GeopointSpring引导应用程序。当我保存弹性索引并创建geoDistanceQuery时,我得到了QueryShardException[未能找到geo_point字段[customer]]异常。 我的文件; 储存库; 保存和获取方法;

  • 我使用SpringBootMaven插件将应用程序打包为jar文件。 它可以在Itellij IDE中找到直接运行的资源文件,但之后找不到资源文件,显示错误为: JAVA木卫一。FileNotFoundException:类路径资源[jmxremote.password]无法解析为绝对文件路径,因为它不位于文件系统:jar:file:/home/XXX/target/yyyy中。罐子/BOOT-I

  • 问题内容: 我试图检查elasticsearch 6.2.1的RestHighLevelClient中是否存在索引 目前我正在使用以下代码 它工作正常,但我想找到一些相关方法,例如 elasticsearch6.2.1 任何帮助都非常感谢。 问题答案: 在高级REST客户端(可能从6.3版本开始)支持此功能之前,您可以通过使用低级REST客户端并向您的索引名称发出HEAD HTTP请求来 实现此目