【Elasticsearch】java.lang.ClassNotFoundException: org.elasticsearch.client.core.CountRequest ╰半夏微凉° 2022-12-26 11:16 123阅读 0赞 ### 引言 ### ###### 之前在Elasticsearch搜索服务中增加了Count方法,可直接根据查询条件得到符合条件的总数,在搜索服务中也已经测试通过,但在引用了该服务的其他业务服务启动报错,如下: ###### ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzQyMjM_size_16_color_FFFFFF_t_70] ### 排查 ### ###### 出现类似ClassNotFoundException这种错误,一般是引用的jar包有问题。搜索服务是用的6.8.6版本,并且该方法已经测试通过,所以想到的问题的原因是不是其他业务服务中引用的Elasticsearch版本并不是该版本的。 ###### ###### 确实,发现业务服务中引用的elasticsearch版本并不是6.8.6,而是6.4.3,如下: ###### ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzQyMjM_size_16_color_FFFFFF_t_70 1] ###### 我在search工程中引入的是6.8.6,而在业务系统中引入search工程,版本确是6.4.3,解决此问题,启动报错的问题也就解决了。 ###### ### 原因 ### ###### 猜想是因为maven的继承关系影响了版本。所以从pom文件的parent节点出发查找真正原因,search工程中添加了parent节点,引用的是整个项目的父工程,父工程中统一引用了spring-boot-starter-parent,版本为2.1.9.RELEASE。 ###### ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzQyMjM_size_16_color_FFFFFF_t_70 2] ###### 通过spring-boot-dependencies节点可跳转到具体的pom,可以发现对应的elasticsearch版本确实是6.4.3的,如下: ###### ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzQyMjM_size_16_color_FFFFFF_t_70 3] ### 解决 ### ###### 问题原因找到了,解决方法也就很简单了。我们只需要在parent工程中,指定引入的elasticserch版本为6.8.6即可,如下: ###### ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzQyMjM_size_16_color_FFFFFF_t_70 4] ###### 指定版本后,再去查看其他业务系统会发现引入的elasticsearch版本是正确的了,并且启动报错问题也解决了。 ###### ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzQyMjM_size_16_color_FFFFFF_t_70 5] ### 总结 ### ###### 一个小问题,还是值得写篇博客记录下,因为之前也没有注意项目中引入的版本是否符合期望的,通过这次遇到的问题才让自己发现了这个需要关注的点。 ###### ###### 所以如果以后再遇到类似的基础服务工程,并且又有对应的parent,还是需要看下其他工程引用的版本是不是真的是自己指定的。 ###### [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzQyMjM_size_16_color_FFFFFF_t_70]: /images/20221120/c3ba1f107b914d81aa846c17bfa62c63.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzQyMjM_size_16_color_FFFFFF_t_70 1]: /images/20221120/bd31964856a84d07b7fc3dbf27fbba41.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzQyMjM_size_16_color_FFFFFF_t_70 2]: /images/20221120/878955edbe8d49be91b504cb2fe39de2.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzQyMjM_size_16_color_FFFFFF_t_70 3]: /images/20221120/b624a975da374ffab651daaab841a530.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzQyMjM_size_16_color_FFFFFF_t_70 4]: /images/20221120/5dc94e2db2104cd48cc361b78afb5968.png [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTMwMzQyMjM_size_16_color_FFFFFF_t_70 5]: /images/20221120/efef8e95e13b4efdb737e463b70dbdb2.png
还没有评论,来说两句吧...