Springboot es包版本异常解决方案
在项目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>
发现项目总会拉下 6.4.3 的版本,并且项目中也会引用这个版本然后启动项目,还会发现找不到方法的异常
Exception in thread "main" java.lang.NoSuchMethodError: org.elasticsearch.client.Request.addParameters(Ljava/util/Map;)V
at 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)
点进去发现 RequestConverters 引用的7.6.1版本,
而Request 引用的却是6.4.3版本。 很明显是版本的问题了。那就奇怪了,我引用的7.6.1版本,但是rest-client包却是6.4.3。
原因是因为我用的springboot版本是2.1.6。 这个版本的springboot默认引用的是es 的6.4.3版本。所以我们要在pom.xml中显式的指定es的版本
<properties> <elasticsearch.version>7.6.1</elasticsearch.version> </properties>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
深入浅析springboot中static和templates区别
静态页面的return默认是跳转到/static/目录下,当在pom.xml中引入了thymeleaf组件,动态跳转会覆盖默认的静态跳转,默认就会跳转到/templates/下,注意看两者return代码也有区别,动态没有html后缀. 1.1 在static下新建hello1.html 运行程序,浏览器输入http://localhost:8080/hello1.html so,可以在根目录下访问hello1.html,static目录类似于传统Java web中的webroot或webcon
-
SpringBoot @ConfigurationProperties使用详解
简介 本文将会详细讲解@ConfigurationProperties在Spring Boot中的使用. 添加依赖关系 首先我们需要添加Spring Boot依赖: <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <relativePath/> <!-- lookup
-
Spring Boot中的Properties的使用详解
简介 本文我们将会讨怎么在Spring Boot中使用Properties.使用Properties有两种方式,一种是java代码的注解,一种是xml文件的配置.本文将会主要关注java代码的注解. 使用注解注册一个Properties文件 注册Properties文件我们可以使用@PropertySource 注解,该注解需要配合@Configuration 一起使用. @Configuration @PropertySource("classpath:foo.properties"
-
SpringBoot http请求注解@RestController原理解析
这篇文章主要介绍了SpringBoot http请求注解@RestController原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 @RestController @RestController = @Controller + @ResponseBody组成,等号右边两位同志简单介绍两句,就明白我们@RestController的意义了: @Controller 将当前修饰的类注入SpringBoot IOC容器,使得从该类所在的项目
-
Spring Boot Rest控制器单元测试过程解析
Spring Boot提供了一种为Rest Controller文件编写单元测试的简便方法.在SpringJUnit4ClassRunner和MockMvc的帮助下,可以创建一个Web应用程序上下文来为Rest Controller文件编写单元测试. 单元测试应该写在src/test/java目录下,用于编写测试的类路径资源应该放在src/test/resources目录下. 对于编写单元测试,需要在构建配置文件中添加Spring Boot Starter Test依赖项,如下所示. <depe
-
SpringBoot如何读取war包jar包和Resource资源
这篇文章主要介绍了SpringBoot如何读取war包jar包和Resource资源,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 场景描述 在开发过程中我们经常会碰到要在代码中获取资源文件的情况,而我在最近在SpringBoot项目中时碰到一个问题,就是在本地运行时,获取本地的xml资源文件是能够获取到的,但是项目打成war包jar包启动运行时,就会发生问题,报找不到资源文件的错误.然后经过寻找排查确定了是下面代码通过ClassLoader获
-
Spring Boot读取resources目录文件方法详解
这篇文章主要介绍了Spring Boot读取resources目录文件方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在Java编码过程中,我们常常希望读取项目内的配置文件,按照Maven的习惯,这些文件一般放在项目的src/main/resources下,因此,合同协议PDF模板.Excel格式的统计报表等模板的存放位置是resources/template/test.pdf,下面提供两种读取方式,它们分别在windows和Linux
-
Springboot es包版本异常解决方案
在项目pom.xml中加入依赖 <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elasticsearch-rest-high-level-client</artifactId> <version>7.6.1</version> </dependency> <dependency> <groupId>
-
SpringBoot使用Maven打包异常-引入外部jar的问题及解决方案
由于项目需要,在需要打包的时候,由于引入的外部jar在本地是可以使用的,但是当打包后启动时报错,找不到对应的类. 使用 1.引入外部jar包 项目中简历文件夹lib 可以在resultces包下简历一个lib文件夹,将jar包扔进去: 在配置文件中引用 <dependency> <groupId>com.xx.xxx</groupId> //组织,随便命名 <artifactId>***</artifactId> //包的名字,随便命名 <
-
SpringBoot启动遇到的异常问题及解决方案
目录 SpringBoot启动遇到异常 1.问题 2.异常 3.异常 4.异常 5.异常 6.异常 7.异常 SpringBoot优雅的处理异常 使用异常 创建统一异常类 测试 SpringBoot启动遇到异常 1. 问题 SpringBoot本身需要引入自身的一个parent,但是pom里面一般都已经存在了一个parent,这时就不能在引入springBoot的parent 解决方案: <dependency> <groupId>org.springfra
-
spring-boot项目启动迟缓异常排查解决记录
目录 问题背景 问题分析 假设问题 小心求证 问题总结 问题背景 一个spring boot开发的项目,spring boot版本是1.5.7,携带的spring版本是4.1.3.开发反馈,突然在本地启动不起来了,表象特征就是在本地IDEA上运行时,进程卡住也不退出,应用启动时加载相关组件的日志也不输出.症状如下图: 问题分析 因为没有有用的日志信息,所以不能从日志这个层面上排查问题.但是像这种没有输出日志的话,一般情况下,肯定是程序内部启动流程卡在什么地方了,只能通过打印下当前线程堆栈信息了解
-
Android7.0自动更新适配 包解析异常
在Android7.0的手机上,自动更新的时候出现包解析异常,在其他的手机上没有这个问题. 原因: Android7.0引入私有目录被限制访问和StrictMode API .私有目录被限制访问是指在Android7.0中为了提高应用的安全性,在7.0上应用私有目录将被限制访问.StrictMode API是指禁止向你的应用外公开 file:// URI. 如果一项包含文件 file:// URI类型 的 Intent 离开你的应用,则会报出异常. 解决办法: 第一步:在AndroidManif
-
解决SpringBoot jar包中的文件读取问题实现
前言 SpringBoot微服务已成为业界主流,从开发到部署都非常省时省力,但是最近小明开发时遇到一个问题:在代码中读取资源文件(比如word文档.导出模版等),本地开发时可以正常读取 ,但是,当我们打成jar包发布到服务器后,再次执行程序时就会抛出找不到文件的异常. 背景 这个问题是在一次使用freemarker模版引擎导出word报告时发现的.大概说一下docx导出java实现思路:导出word的文档格式为docx,事先准备好一个排好版的docx文档作为模版,读取解析该模版,将其中的静态资源
-
SpringBoot处理全局统一异常的实现
在后端发生异常或者是请求出错时,前端通常显示如下 Whitelabel Error Page This application has no explicit mapping for /error, so you are seeing this as a fallback. Fri Jun 07 15:38:07 CST 2019 There was an unexpected error (type=Not Found, status=404). No message available 对于
-
springboot jar包外置配置文件的解决方法
为什么要搞个解决方案呢?按照网上教程,spring boot项目中,配置文件有优先级,其中,放在根目录下的config文件夹中优先级最高:根目录下次之:然后是resources/config/:resources/下优先级最低.而加载顺序刚好反过来,resources/下最先加载,而/config/最后加载.然后在命令行方式下,指定一下这个配置文件的路径,就可以了,云云. 也许事实就是如此的吧,但我试来试去,总不成功,系统死活都要读resources/下,这个优先级最低的配置文件. 这对于用 j
-
SpringBoot集成vue的开发解决方案
最近由于工作要求:前端采用vue开发,后端采用springboot开发,前后端分离开发,最后前端页面又整合到后端来.经历多次采坑,总结以下方案: vue build后的文件部署到springboot目录 vue打包后,会生成dist目录 springboot静态资源目录如下: SpringBoot处理静态资源和页面,设置如下: @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registr
-
Springboot自动扫描包路径来龙去脉示例详解
我们暂且标注下Springboot启动过程中较为重要的逻辑方法,源码对应的spring-boot-2.2.2.RELEASE版本 public ConfigurableApplicationContext run(String... args) { StopWatch stopWatch = new StopWatch(); stopWatch.start(); ConfigurableApplicationContext context = null; Collection<SpringBoo
随机推荐
- python解析html开发库pyquery使用方法
- 详解 Java继承关系下的构造方法调用
- ASP.NET私有构造函数用法分析
- PHP 图片上传实现代码 带详细注释
- += 和 ++ 操作符区别简单介绍
- python将文本转换成图片输出的方法
- 总结C#动态调用WCF接口的两种方法
- ubuntu修改terminal终端的主机名的实现方法
- Java基于Tcp协议的socket编程实例
- WMI入门教程之什么是WMI?
- jQuery EasyUI API 中文帮助文档和扩展实例
- js实现超酷的照片墙展示效果图附源码下载
- JavaScript类型系统之正则表达式
- nginx缓存不起作用问题解决方法
- Android 启动另一个App/apk中的Activity实现代码
- php网页后退不再出现过期
- 搜索和替换文件或目录的一个好类--很实用
- MYSQL数据库表结构优化方法详解
- pymysql模块的使用(增删改查)详解
- 微信小程序学习笔记之目录结构、基本配置图文详解