【开发心得】记一次springboot2.x集成spring data elasticsearch java.lang.NoSuchFieldError: LATEST的报错

前言: 最近新模块需要引入新版es,在自己建立的单独的boot工程里边,正常集成,正常处理业务。但是搬到父工程里,发现报错。

奇怪了,之前的群组工程并没有使用es或者solr啊,为啥启动不起来呢。

1.一个小儿科的问题,包路径多了一层, 导致bean注入失败。

2.工程里边包含lucene。。。。(前辈之前做测试的时候加的)

3.还有一个问题是,如果是父子工程的情况下,手动指定elastic search版本,需要在父工程的properties中指名版本号。

 

报错:java.lang.NoSuchFieldError: LATEST
通过查看报错处Environment对象源码,发现有如下变量声明。

public static final org.apache.lucene.util.Version DEFAULT_LUCENE_MATCH_VERSION = org.apache.lucene.util.Version.LATEST;
显然该变量又引用了lucene-core-version.jar下的工具类Version中的变量值。

解决方案:

去掉lucene以来即可。

posted @   虹梦未来  阅读(20)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示