我正在使用Spring Boot和Elastic-Search创建应用程序。 Spring应用程序部分正在运行而且当我启动Elastic服务器时,它也运行良好。没问题。我可以通过POSTMAN和CURL来测试它。添加和搜索效果很好。
但是当我运行应用程序时,我遇到了以下问题。 这是我在IDE中遇到的问题。 (这意味着来自我的java应用程序)
org.elasticsearch.client.transport.NoNodeAvailableException:没有配置的节点可用:[{#transport#-1} {127.0.0.1} {127.0.0.1:9300}]
这是我从本地系统上的Elasctic服务器获得的问题。
java.lang.IllegalStateException:收到来自不受支持的版本的消息:[2.0.0]最小兼容版本为:[5.0.0]
这些是我正在使用的库。
我认为这是Elastic及以上库版本不匹配的问题。 我是Elastic和Spring的新手。版本问题在这里。 https://github.com/spring-projects/spring-data-elasticsearch/wiki/Spring-Data-Elasticsearch---Spring-Boot---version-matrix
这也是我的pom.xml。如果我需要更新任何库,任何人都可以告诉我它是什么?还告诉我如何更新这些库?我可以在不更改源代码的情况下更新它们吗?
<?xml version="1.0" encoding="UTF-8"?>
http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0
<artifactId>springboot-springdata-elasticsearch-example</artifactId>
<packaging>jar</packaging>
<url>https://www.mkyong.com</url>
<version>1.0</version>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.1.RELEASE</version>
</parent>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-elasticsearch</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<!-- Runtime, for Embedded Elasticsearch,
comment this if connect to external elastic search server-->
<dependency>
<groupId>net.java.dev.jna</groupId>
<artifactId>jna</artifactId>
<scope>runtime</scope>
</dependency>
</dependencies>
<build>
<plugins>
<!-- Package as an executable jar/war -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
在这个pom.xml中,我也无法找到所有依赖项。
答案 0 :(得分:1)
根据您提供的版本矩阵,您使用的Spring引导版本与ElasticSearch 5.x实例不兼容。所以,我认为你有3个选择:
如果上述任何选项对您有用,请与我们联系。