tips: 上一篇文章我们整合了springboot 与kafka,细心的童鞋可能已经发现了我们使用的springboot版本为最新的2.0.0,同样spring-kafka也为最新的版本2.1.4,我们确实都已经成功的整合了,并没有遇到什么问题,但是今天我整合elasticsearch时却出现了问题,经过一段时间的排查,发现是依赖版本所致,我在引入elasticsearch依赖(spring-boot-starter-data-elasticsearch)时,默认会与springboot版本同步即2.0.0,然后启动的时候就会抛出异常:

Caused by: java.lang.ClassNotFoundException: org.springframework.data.mapping.context.AbstractMappingContext
at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)

... 41 common frames omitted

此时我把springboot版本降低为1.5.10,然后重新启动,以上异常不见了,但是抛出了另外一个异常:

java.lang.NoSuchMethodError: org.springframework.util.Assert.state(ZLjava/util/function/Supplier;)V
at org.springframework.kafka.listener.adapter.MessagingMessageListenerAdapter.determineInferredType(MessagingMessageListenerAdapter.java:463)
at org.springframework.kafka.listener.adapter.MessagingMessageListenerAdapter.<init>(MessagingMessageListenerAdapter.java:106)
at org.springframework.kafka.listener.adapter.RecordMessagingMessageListenerAdapter.<init>(RecordMessagingMessageListenerAdapter.java:61)
at org.springframework.kafka.config.MethodKafkaListenerEndpoint.createMessageListenerInstance(MethodKafkaListenerEndpoint.java:172)
at org.springframework.kafka.config.MethodKafkaListenerEndpoint.createMessageListener(MethodKafkaListenerEndpoint.java:132)
at org.springframework.kafka.config.AbstractKafkaListenerEndpoint.setupMessageListener(AbstractKafkaListenerEndpoint.java:374)
at org.springframework.kafka.config.AbstractKafkaListenerEndpoint.setupListenerContainer(AbstractKafkaListenerEndpoint.java:359)
at org.springframework.kafka.config.AbstractKafkaListenerContainerFactory.createListenerContainer(AbstractKafkaListenerContainerFactory.java:246)

at org.springframework.kafka.config.AbstractKafkaListenerContainerFactory.createListenerContainer

仔细一看应该是和kafka相关的异常,于是我继续尝试着将kafka的版本降低至1.1.7(因为我之前用的就是这个版本),然后启动项目,果然顺利启动了(此时我的心情无以言表呀@_@);说了这么多就是记录一下可能产生问题的原因,希望能给其它童鞋一些警示,另外springboot版本更新速度之快堪称火箭啊,所以大家在引用的时候切忌追求最新,否则会遇到各种问题;

好吧,说了这么多,接下来进入正题了:

注:以下所有的springboot版本我都更改为1.5.10了。

1.打开pom.xml并加入以下内容:

<!--elasticsearch-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-elasticsearch</artifactId>
    <version>1.5.10.RELEASE</version>
</dependency>

引入elasticsearch依赖

2.打开application-dev.properties加入以下内容(集群模式以“,”隔开):

##es
spring.data.elasticsearch.cluster-name=elasticsearch
spring.data.elasticsearch.cluster-nodes=10.0.2.23:9300

3.编写单元测试类:

如果查询到了数据说明你成功了哦!

注:

1.这里我并没有教大家建立索引和类型(orderinfo),大家可以自行查阅资料,挺简单的,搭建一个ES服务也挺简单的哦,ES集群是自动发现机制,只要在同一个网段,且集群名称相同多个ES服务会自动组建成一个集群(如果大家有啥不懂的可以私信哦,相互交流)

2.这里我并没有采用spring封装的elasticsearchTemplate查询,大家可以自行测试spring所封装的功能,因为我习惯了用原生api

转载于:https://www.cnblogs.com/babac/p/9028479.html

springboot + elasticsearch相关推荐

  1. 聊聊springboot elasticsearch healthIndicator

    序 本文主要研究一下springboot elasticsearch healthIndicator ElasticsearchHealthIndicatorProperties spring-boo ...

  2. springboot+elasticsearch+bboss框架集成遇到的坑

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.为什么要用bboss? 二.遇到的坑 1.kibana.head页面查询结果不一致 2.head查询结果与bbos ...

  3. springboot+elasticsearch+neo4j+vue+activiti数字知识库管理系统

    文章目录 前言 一.项目概要 二.相关技术点 1.富文本编辑器 2.全文检索 3.知识图谱 4.工作流 总结 前言 在数字化高度普及的时代,企事业机关单位在日常工作中会产生大量的文档,例如医院制度汇编 ...

  4. SpringBoot Elasticsearch

    文章目录 Windwos Elasticsearch Elasticsearch 基本介绍 Elasticsearch 6.8.5 单机安装 kibana6.8.5 可视化工具 Springboot ...

  5. SpringBoot Elasticsearch组合查询封装

    最近项目组需要用到Elasticsearch,封装了ESQueryBuilder方便条件组合,结合ES工具类使用效果更佳,下面是ES工具类传送门: SpringBoot Elasticsearch工具 ...

  6. springboot ElasticSearch配置自定义转换器ElasticsearchCustomConversions

    springboot ElasticSearch配置自定义转换器ElasticsearchCustomConversions 问题场景 在将Timestamp类型存进Elasticsearc后,将其取 ...

  7. SpringBoot ElasticSearch 全文搜索

    2019独角兽企业重金招聘Python工程师标准>>> 一.pom.xml配置 SpringBoot版本1.5.6https://blog.csdn.net/kingice1014/ ...

  8. springboot+Elasticsearch实现word,pdf,txt内容抽取并高亮分词全文检索

    文章目录 需求 一.环境 二.功能实现 1.搭建环境 2.文件内容识别 三.代码 需求 产品希望我们这边能够实现用户上传PDF,WORD,TXT之内得文本内容,然后用户可以根据附件名称或文件内容模糊查 ...

  9. SpringBoot+Elasticsearch实现过程

    前言: 最近因为工作中用到Elasticsearch,之前没接触过,所以学习了一下Elasticsearch搜索引擎,自己在本地搭建了一下过程,记录一下. 首先我查了一下springBoot版本和El ...

最新文章

  1. 日益谨慎的谷歌AI,会在自我限制中越走越慢吗?
  2. 电子计算机是一种精准的仪器,常见的八种无损检测仪器
  3. 用Pytorch实现三个优秀的自然图像分割框架!(包括FCN、U-Net和Deeplab,可直接训练预测)
  4. java final
  5. MyBatisPlus中使用 @TableField完成字段自动填充
  6. python静默打印pdf_前端静默打印实现 html pdf集合
  7. javascript图片库威力增强版
  8. “引才入湘”大行动正式启动,CSDN携手万兴科技助力长沙打造人才品牌
  9. mint 安装chrome_在Linux Mint上安装Chrome –简单的分步指南
  10. WinForm 窗体中实现单例模式
  11. 大工20秋C语言在线测试,大工20秋《计算机应用基础》在线测试
  12. ESC键居然有这样的妙用!!!你知道吗?
  13. 国外高手又一力作,CAML Builder
  14. 疯狂工作流讲义(第2版)基于Activiti6.x电子书
  15. Hololens工程发布前后覆盖的问题
  16. 《鸟哥的Linux私房菜》第四版导学
  17. BZOJ3533: [Sdoi2014]向量集
  18. 90%程序员是这样写注释的...网友:精辟
  19. unity开发_Unity开发人员在Ludum Dare 30上大放异彩
  20. ADO,ADO.NET

热门文章

  1. NLP数据科学家不会告诉你的残酷事实
  2. 显著提升图像识别网络效率,Facebook提出IdleBlock混合组成方法
  3. AI安防火热战况下 算法到场景还有多远?
  4. 深入剖析机器学习中的统计思想
  5. 人工智能:2018年发生了什么变化,2019年又将发生什么变化
  6. 30年后,请再来看霍金的“人工智能威胁论”
  7. 干货丨深度学习、图像分类入门,从VGG16卷积神经网络开始
  8. Python 之 Matplotlib (四)图例
  9. The following packages will be SUPERCEDED by a higher-priority channel
  10. 深度解析:国产化软硬件全景梳理