Elasticsearch 7.17、spring data elasticsearch 和 elasticsearch-rest-high-level-client 之间的兼容性(作为 Spring 引导 Maven 依赖项)
Compatibility (as Spring boot Maven dependencies) between Elasticsearch 7.17, spring data elasticsearch and elasticsearch-rest-high-level-client
我有一个 Spring Boot + Elasticsearch 应用程序,其中包含现已弃用的高级 Rest 客户端。我正在尝试将现有的 queries/methods 迁移到新的 Java API 客户端,但想保留 HLRC 一段时间(以防我破坏任何东西)。
我似乎 运行 陷入了一个我没有得到的依赖性问题。我目前收到错误 java.lang.NoClassDefFoundError: org/elasticsearch/xcontent/ToXContentObject
,我认为这是由于兼容性问题造成的。这些是我当前的(相关的)依赖项:
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
<version>7.17.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>jakarta.json</groupId>
<artifactId>jakarta.json-api</artifactId>
<version>2.1.0</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-elasticsearch</artifactId>
<version>4.3.4</version>
</dependency>
Elasticsearch 在 7.17 上。至于 Maven 依赖项......我真的不知道要使用什么版本,以便在我测试新代码时它仍然可以 运行 旧的 HLRC? (所以我将版本设置为可能的最新版本)
编辑信息:
- 当前spring引导版本为2.2.8
- 在手动设置版本之前,org.elasticsearch.client 是 6.8.x
- 我的方法愚蠢吗,我应该放弃所有 HLRC 以支持 implementing/testing Java API 客户?
任何pointers/fixes赞赏!
如果我没记错的话,在 7.15 或 7.16 版本中,Elasticsearch 进行了重大更改,将 xcontent 类 移到了另一个包中。您不能将 Spring Data Elasticsearch 4.3.x 与 Elasticsearch 7.17
一起使用
我有一个 Spring Boot + Elasticsearch 应用程序,其中包含现已弃用的高级 Rest 客户端。我正在尝试将现有的 queries/methods 迁移到新的 Java API 客户端,但想保留 HLRC 一段时间(以防我破坏任何东西)。
我似乎 运行 陷入了一个我没有得到的依赖性问题。我目前收到错误 java.lang.NoClassDefFoundError: org/elasticsearch/xcontent/ToXContentObject
,我认为这是由于兼容性问题造成的。这些是我当前的(相关的)依赖项:
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
<version>7.17.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>jakarta.json</groupId>
<artifactId>jakarta.json-api</artifactId>
<version>2.1.0</version>
</dependency>
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-elasticsearch</artifactId>
<version>4.3.4</version>
</dependency>
Elasticsearch 在 7.17 上。至于 Maven 依赖项......我真的不知道要使用什么版本,以便在我测试新代码时它仍然可以 运行 旧的 HLRC? (所以我将版本设置为可能的最新版本)
编辑信息:
- 当前spring引导版本为2.2.8
- 在手动设置版本之前,org.elasticsearch.client 是 6.8.x
- 我的方法愚蠢吗,我应该放弃所有 HLRC 以支持 implementing/testing Java API 客户?
任何pointers/fixes赞赏!
如果我没记错的话,在 7.15 或 7.16 版本中,Elasticsearch 进行了重大更改,将 xcontent 类 移到了另一个包中。您不能将 Spring Data Elasticsearch 4.3.x 与 Elasticsearch 7.17
一起使用