解决 java.lang.NoSuchMethodError的错误
解决 java.lang.NoSuchMethodError的错误
1 原因
在项目依赖比较复杂或者 Java 运行的环境有问题时,或者同一类型的 jar 包有不同版本存在,都可能触发该错误。本质上说是 JVM 找不到某个类的特定方法,也就是说 JVM 加载了错误版本的类。说白了,就是 JVM 找不到真正想要调用的方法啦!出现该错误的情形主要有以下两个种:
- 导入了不匹配的包版本;
- 开发环境和运行环境不一致。
2 解决方法
查看“External Libraries”,看报错的方法到底存不存在,如果不存在,说明这个包一定有问题啦,更新包就可以啦;如果存在,说明包已经引入成功,但集成开发环境有可能没有同步到,可以尝试强制更新的方法。此外,可以查看一下开发环境和运行环境是否一致,如果不一致,修改。
3 特别提醒
如果是 maven 工程,在我们更新包的过程中,主要有两种方法:
- 到本地 maven 仓库中,把对应的包删掉,然后在“maven project”中点击刷新;
- 直接在“maven project”的命令行中输入命令强制更新。
其中,方法 1 不太靠谱,有可能操作不成功,原因未知,强烈推荐用方法 2,没别的,靠谱啊!
强制更新maven命令:clean install -Dmaven.test.skip=true -U
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关推荐
-
JavaScript 获取当前时间戳的代码
JavaScript 获取当前时间戳: 第一种方法: 复制代码 代码如下: var timestamp = Date.parse(new Date()); 结果:1280977330000 第二种方法: 复制代码 代码如下: var timestamp = (new Date()).valueOf(); 结果:1280977330748 以上代码将获取从 1970年1月1日午夜开始的毫秒数.二者的区别是,第一种方法的毫秒位上为全零,即只是精确到秒的毫秒数 如题所示,返回unix时间戳所对应的具体
-
JavaScript window.setTimeout() 的详细用法
js的setTimeout方法用处比较多,通常用在页面刷新了.延迟执行了等等.但是很多javascript新手对setTimeout的用法还是不是很了解.虽然我学习和应用javascript已经两年多了,但是对setTimeout方法,有时候也要查阅资料.今天对js的setTimeout方法做一个系统地总结. setInterval与setTimeout的区别 说道setTimeout,很容易就会想到setInterval,因为这两个用法差不多,但是又有区别,今天一起总结了吧! setTimeo
-
java.net.SocketException: Connection reset 解决方法
自从SEOTcs系统11月份24日更新了一下SEO得分算法以来,一直困扰我的一个问题出现了,java的数据job任务,在执行过程中会经常报以下的错误: "2011-12-03 18:00:32 DefaultHttpClient [INFO] I/O exception (java.net.SocketException) caught when processing request: Connection reset by peer: socket write error2011-12-03
-
Javascript Math ceil()、floor()、round()三个函数的区别
下面来介绍将小数值舍入为整数的几个方法:Math.ceil().Math.floor()和Math.round(). 这三个方法分别遵循下列舍入规则: ◎Math.ceil()执行向上舍入,即它总是将数值向上舍入为最接近的整数: ◎Math.floor()执行向下舍入,即它总是将数值向下舍入为最接近的整数: ◎Math.round()执行标准舍入,即它总是将数值四舍五入为最接近的整数(这也是我们在数学课上学到的舍入规则). 下面是使用这些方法的示例: alert(Math.ceil(25.9))
-
解决 java.lang.NoSuchMethodError的错误
解决 java.lang.NoSuchMethodError的错误 1 原因 在项目依赖比较复杂或者 Java 运行的环境有问题时,或者同一类型的 jar 包有不同版本存在,都可能触发该错误.本质上说是 JVM 找不到某个类的特定方法,也就是说 JVM 加载了错误版本的类.说白了,就是 JVM 找不到真正想要调用的方法啦!出现该错误的情形主要有以下两个种: 导入了不匹配的包版本: 开发环境和运行环境不一致. 2 解决方法 查看"External Libraries",看报错的方法到底存
-
完美解决java.lang.OutOfMemoryError处理错误的问题
原因: 常见的有以下几种: 1.内存中加载的数据量过于庞大,如一次从数据库取出过多数据: 2.集合类中有对对象的引用,使用完后未清空,使得JVM不能回收: 3.代码中存在死循环或循环产生过多重复的对象实体: 4.使用的第三方软件中的BUG: 5.启动参数内存值设定的过小: 常见错误提示: 1.tomcat:java.lang.OutOfMemoryError: PermGen space 2.tomcat:java.lang.OutOfMemoryError: Java heap space 3
-
解决启动Azkaban报错问题:java.lang.NoSuchMethodError: com.google.common.collect.ImmutableMap.toImmutableMap
问题描述: 启动Azkaban报错: java.lang.NoSuchMethodError:com.google.common.collect.ImmutableMap.toImmutableMap 解决方法: 从报错信息来看,是找不到toImmutableMap这个方法.首先找到类ImmutableMap对应的Jar包为guava,然后在服务器查找这个Jar包: find / -name "guava*.jar" 发现除了Azkaban安装目录,其他程序目录下也有guava包.Az
-
IDEA 中使用 ECJ 编译出现 java.lang.IllegalArgumentException的错误问题
IDEA 中使用 ECJ 编译出现 java.lang.IllegalArgumentException IDEA内置的ECJ版本太高了 把图中红框部分的内容替换一个合适的版本jar包就行了.这个jar除了可以单独下载,在tomcat / lib 目录下也存在 ps:IDEA中的tomcat启动出现java.lang.IllegalArgumentException,java.util.zip.ZipException 我的错误:war中包含的的jar版本与pom.xml中配置的版本不一致.wa
-
解决java.lang.ClassCastException的java类型转换异常的问题
在项目中,需要使用XStream将xml string转成相应的对象,却报出了java.lang.ClassCastException: com.model.test cannot be cast to com.model.test的错误. 原因: 项目中应该是采用了热部署,devtools,因为累加载器的不同所以会导致类型转换失败 措施: 在pom.xml中将以下代码注释掉: <dependency> <groupId>org.springframework.boot</g
-
Java异常 Factory method'sqlSessionFactory'rew exception;ested exception is java.lang.NoSuchMethodError:
springboot 引入mybatis-plus后报错: Factory method 'sqlSessionFactory' threw exception; nested exception is java.lang.NoSuchMethodError: com.baomidou.mybatisplus.entity.GlobalConfiguration.getWorkerId()Ljava/lang/Long; org.apache.ibatis.binding.BindingExce
-
解决java.lang.NoClassDefFoundError: android.support.v4.animation.AnimatorCompatHelper问题
在开发过程中,有的时候引入了多个三方库.在调用的时候会出现版本对应不上的原因.就会出现如标题的异常.解决的办法就是在你的build.gradle里面加入如下代码块: configurations.all { resolutionStrategy.eachDependency { DependencyResolveDetails details -> def requested = details.requested if (requested.group == 'com.android.supp
-
Spring Boot2深入分析解决java.lang.ArrayStoreException异常
将某个项目从Spring Boot1升级Spring Boot2之后出现如下报错,查了很多不同的解决方法都没有解决: Spring boot2项目启动时遇到了异常: java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExceptionProxy Caused by: java.lang.ArrayStoreException: sun.reflect.annotation.TypeNotPresentExcep
-
解决java.lang.NullPointerException报错以及分析出现的几种原因
java.lang.NullPointerException出现的几种原因: 1.字符串变量未初始化 2.接口类型的对象没有用具体的类初始化,比如: Map map // 会报错 Map map = new Map(); //则不会报错了 3.当一个对象的值为空时,你没有判断为空的情况. 4.字符串与文字的比较,文字可以是一个字符串或Enum的元素,如下会出现异常 String str = null; if(str.equals("Test")){ //这里的代码将不会被触发,因为会抛
-
springboot解决java.lang.ArrayStoreException异常
idea工具使用 Java Exception Breakpoint 添加异常断点,在IDE里,新建一个断点,类型是Java Exception Breakpoint 当断点起效时,查看AnnotationUtils.findAnnotation(Class<?>, Class<A>, Set<Annotation>) line: 686 函数的参数. 可以发现 clazz是 class com.github.pagehelper.autoconfigure.Mappe
随机推荐
- 再谈javascript 动态添加样式规则 W3C校检
- Java中spring读取配置文件的几种方法示例
- Mozilla中显示textarea中选择的文字
- typecho插件编写教程(五):核心代码
- windows下安装Python和pip终极图文教程
- Android ContentResolver使用说明
- JavaScript中Math对象使用说明
- Android开发之自定义刮刮卡实现代码
- Linux系统下php获得系统分区信息的方法
- 详解C语言sscanf()函数、vsscanf()函数、vscanf()函数
- J2EE中的struts2表单细节处理
- JavaScript中的操作符类型转换示例总结
- C++中Boost库裁剪与其应用详解
- Python实现基本线性数据结构
- javascript 变态的节点集合
- Android 动态改变布局实例详解
- 详解RxJava2 Retrofit2 网络框架简洁轻便封装
- MySQL 8.0的关系数据库新特性详解
- 制作centos基础镜像的方法
- 对vue 键盘回车事件的实例讲解