将Springboot 2.7.8与AWS Elasticsearch连接时出现的问题:ElasticsearchException[Invalid or missing build flavor [oss]]

aor9mmx1  于 2023-05-22  发布在  ElasticSearch
关注(0)|答案(1)|浏览(516)

我已经将我的Springboot版本升级到了2.7.8,将spring-data-elasticsearch版本升级到了4.4.7,将org.elasticsearch --- elasticsearch版本升级到了7.17.3
下面是我的pom.xml中的依赖项

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.7.8</version>
    <relativePath />
</parent>

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

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

此兼容性矩阵来自官方文档:https://docs.spring.io/spring-data/elasticsearch/docs/current/reference/html/#preface.versions
我的AWS Elasticsearch示例版本是6.2,为了测试,我还创建了另一个版本为7.10的示例。
问题是我无法与6.2或7.10版本的任何AWS Elasticsearch示例建立连接。
它失败了,并出现错误:

Invalid or missing build flavor [oss]; nested exception is ElasticsearchException[Invalid or missing build flavor [oss]]

还想澄清一个疑问,在application.properties:

spring.elasticsearch.uris = [AWS-Instance-URL]

我们必须在URL的末尾附加任何端口号吗?[AWS-Instance-URL:?
因为如果我没有提供任何端口号,它会自动配置为-1端口

Failed to instantiate [org.springframework.data.elasticsearch.client.ClientConfiguration]: Factory method 'clientConfiguration' threw exception; nested exception is java.lang.IllegalArgumentException: Port number out of range: AWS-Instance_URL:-1

请有人对此提供一些见解,并在当前配置中说明如何与AWS Elasticsearch建立连接?
谢谢大家!

gkl3eglg

gkl3eglg1#

如果我没记错的话,你看到的错误来自Elasticsearch在7.10版本的客户端中引入的更改。检查https://stackoverflow.com/a/74441976/4393565https://github.com/elastic/elasticsearch/issues/76091。他们在客户端代码中添加了一些许可证检查。你在SO上找到了很多关于这个主题的问题(https://stackoverflow.com/search?q=Invalid+or+missing+build+flavor+oss)。
Spring Data Elasticsearch是用Elasticsearch的官方版本构建和测试的,我不知道AWS Elasticsearch是否在7.17中可用,以及客户端库是否也检查构建风格。
AWS在更改的时候创建了Elasticsearch的Opensearch变体,并且有一个构建在Spring Data Elasticsearch上的https://github.com/opensearch-project/spring-data-opensearch项目(不是由我维护的),但我也不知道这是否适用于您的服务器版本。
顺便说一句:您正在升级到一个版本,是维护。

相关问题