Elasticsearch 8.5.1无法访问QueryBuilder:类文件版本不兼容
解决Elasticsearch 8.5.1的QueryBuilder类版本不兼容问题
这个报错的核心是JDK版本不匹配:Elasticsearch 8.5.1的类文件是用Java 17编译的(class版本61.0对应Java 17),而你的项目当前使用Java 11(class版本55.0对应Java 11),JVM无法加载高版本编译的类。
解决方案:
升级项目JDK到Java 17
在Gradle配置文件build.gradle中指定JDK版本:java { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 }同时确认本地开发环境和CI运行环境(比如你提到的runner)的
JAVA_HOME都指向Java 17的安装路径。降级Elasticsearch依赖版本(无法升级JDK时选择)
Elasticsearch 7.x系列最高支持Java 11,推荐用7.17.x LTS版本,修改依赖:implementation 'org.elasticsearch:elasticsearch:7.17.12'注意同步调整所有相关Elasticsearch客户端依赖(如
elasticsearch-rest-high-level-client)的版本,保持一致。强制刷新依赖缓存
执行命令彻底清理并重新构建:gradle clean build --refresh-dependencies
内容的提问来源于stack exchange,提问作者karthick m
相关产品推荐
相关产品推荐

