【问题标题】:Compatible versions of Spring boot,elasticsearch and spring data elasticsearchSpring boot、elasticsearch和spring data elasticsearch的兼容版本
【发布时间】:2017-10-26 20:57:21
【问题描述】:

我一直在使用spring boot、elasticsearch和spring data elasticsearch开发一个简单的java编程。

我可以使用以下版本成功进行弹性搜索 1) 弹簧靴 1.3.5 2) spring-data-elasticsearch 1.3.4.RELEASE 3)弹性搜索1.3.2

但是当我升级到以下版本时,我的一个服务类使用@service 注释进行注释,显示错误为

"类型 org.elasticsearch.search.suggest.SuggestBuilder$SuggestionBuilder 无法解决。它是从必需的 .class 中间接引用的 文件”。

     1) spring boot 1.5.1.RELEASE
     2) spring-data-elasticsearch 2.1.0.RELEASE
     3) elasticsearch 5.0.1
     4) org.elasticsearch.client.transport 5.1.1

是版本不兼容的问题吗?如果是,请帮我什么是spring boot、elasticsearch和spring data elasticsearch的兼容版本。

【问题讨论】:

    标签: elasticsearch spring-boot spring-data-elasticsearch


    【解决方案1】:

    没有兼容的版本集,因为 Spring Data Elasticsearch 还不支持 Elasticsearch 5.0。请参阅 this issue,它正在跟踪支持 5.0 的一些工作。

    一般来说,与其尝试自己寻找兼容的版本,不如让 Spring Boot 的依赖管理为您处理。如果您要覆盖该依赖项管理以使用新的主要版本的依赖项,那么它很有可能无法正常工作。

    【讨论】:

    • 非常感谢安迪。正如您所建议的那样,从我的 pom 文件中删除了所有被覆盖的版本,并且 jar 版本由 spring boot 管理,现在覆盖了 org.elasticsearch.client.transport 5.1.1 版本,这对于创建 TransportClient 对象很有用。当我尝试运行我的 Spring Boot 应用程序时,出现“java.lang.ClassNotFoundException: org.elasticsearch.plugins.NetworkPlugin”异常。您能帮我理解这个问题吗?
    • 这是我用来创建 TransportClient 对象 Settings settings = Settings.builder().put("cluster.name", "elasticsearch").build(); TransportClient 客户端 = new PreBuiltTransportClient(settings); client.addTransportAddress(new InetSocketTransportAddress(new InetSocketAddress("localhost", 9300)));返回客户;
    • 尝试删除 PreBuildTransportClient 并仅替换 TransportClient.builder()..,类似这样 --> @Bean public Client client() throws UnknownHostException{ Settings settings = Settings.builder() .put( "cluster.name", "elasticsearch") .build(); TransportClient 客户端 = TransportClient.builder().settings(settings).build() .addTransportAddress(new InetSocketTransportAddress(InetAddress.getByName("127.0.0.1"), 9200));返回客户; }
    【解决方案2】:

    Spring Data ES 3.0.0M4 版本兼容 ES 5.0 - Ref - DATAES-285

    【讨论】:

      猜你喜欢
      • 2018-02-01
      • 2019-08-27
      • 1970-01-01
      • 2021-06-29
      • 2023-03-20
      • 2015-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多