Springboot es包版本異常解決方案
在項(xiàng)目pom.xml中加入依賴
<dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elasticsearch-rest-high-level-client</artifactId> <version>7.6.1</version></dependency><dependency> <groupId>org.elasticsearch</groupId> <artifactId>elasticsearch</artifactId> <version>7.6.1</version></dependency>
發(fā)現(xiàn)項(xiàng)目總會(huì)拉下 6.4.3 的版本,并且項(xiàng)目中也會(huì)引用這個(gè)版本然后啟動(dòng)項(xiàng)目,還會(huì)發(fā)現(xiàn)找不到方法的異常
Exception in thread 'main' java.lang.NoSuchMethodError: org.elasticsearch.client.Request.addParameters(Ljava/util/Map;)Vat org.elasticsearch.client.RequestConverters.index(RequestConverters.java:341)at org.elasticsearch.client.RestHighLevelClient.internalPerformRequest(RestHighLevelClient.java:1510)at org.elasticsearch.client.RestHighLevelClient.performRequest(RestHighLevelClient.java:1484)at org.elasticsearch.client.RestHighLevelClient.performRequestAndParseEntity(RestHighLevelClient.java:1454)at org.elasticsearch.client.RestHighLevelClient.index(RestHighLevelClient.java:871)at com.majb.es.ESMain.main(ESMain.java:23)
點(diǎn)進(jìn)去發(fā)現(xiàn) RequestConverters 引用的7.6.1版本,
而Request 引用的卻是6.4.3版本。 很明顯是版本的問題了。那就奇怪了,我引用的7.6.1版本,但是rest-client包卻是6.4.3。
原因是因?yàn)槲矣玫膕pringboot版本是2.1.6。 這個(gè)版本的springboot默認(rèn)引用的是es 的6.4.3版本。所以我們要在pom.xml中顯式的指定es的版本
<properties><elasticsearch.version>7.6.1</elasticsearch.version> </properties>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 淺談XML Schema中的elementFormDefault屬性2. 父div高度不能自適應(yīng)子div高度的解決方案3. 前端從瀏覽器的渲染到性能優(yōu)化4. ASP.NET Core 5.0中的Host.CreateDefaultBuilder執(zhí)行過程解析5. 利用XMLSerializer將對(duì)象串行化到XML6. 淺談?dòng)蓀osition屬性引申的css進(jìn)階討論7. ASP中SELECT下拉菜單同時(shí)獲取VALUE和TEXT值的實(shí)現(xiàn)代碼8. 選擇模式 - XSL教程 - 29. 阿里前端開發(fā)中的規(guī)范要求10. 三個(gè)不常見的 HTML5 實(shí)用新特性簡(jiǎn)介
