java.lang.VerifyError 错误解决方法

开发Bug全记录——java.lang.VerifyError 如何遇到这个问题 基于种种原因在打包之后要拆开再进行smali,再打包的过程中遇到了这个问题,而且在ART虚拟机下面不会报错,在Dalvik虚拟机下会出现报错,很强势。 为什么会出现这个问题 Java虚拟机编译的时候,”校验器”检测到一个类文件虽然格式正确,但包含着一些内部不一致性或安全性问题时,抛出该错误 校验器会检查这个类的构造是否符合jvm的字节码规范,不同虚拟机可能在检查的时候... 阅读详情

一般地,java.lang.VerifyError 是说 JVM 在加载一个类时,会去校验类的正确性,只有类文件不合法才会报这个Error。

这个错误是集成三方sdk的时候遇到的看到这个错误,真是蒙了,查阅文档后,各种说法都有,也算是增加了对这个异常的理解,参考过的文章见底部,虽然看了

很多,但并没有直接找到原因,各种尝试快两天,后来仔细看出问题的类,FileUploadUtil ,这个类里有用到联网的三方库,有看了下jar包,版本一个是

com.loopj.android:android-async-http:1.4.9,android-async-http:1.4.6, 三方SDK里提供的是1.4.6的jar包,但是项目里有个1.4.9的依赖,编译时冲突估计就去掉

了,没想到居然还隐藏了这个大bug,三方库里的用到的那个问题和新包里依赖的那个文件有差别,具体的原因请看延伸阅读第一篇文章,非常详细,相信读过后

即使不能完全读懂也会有收获的。

说到问题的解决,还是要查看错误log,这个错误和FileUploadUtil类有关,这个类的构造加载时加载了一个静态方法

public static SSLSocketFactory createSSLSocketFactory() {
    MySSLSocketFactory var0 = null;

    try {
        KeyStore var1 = KeyStore.getInstance(KeyStore.getDefaultType());
        var1.load((InputStream)null, (char[])null);
        var0 = new MySSLSocketFactory(var1);
    } catch (Exception var2) {
        var2.printStackTrace();
    }

    return var0;
}

上面的方法里用到了MySSLSocketFactory 的构造,而MySSLSocketFactory 类里又有很多静态方法,用到了 android-async-http jar

包中的方法,so,及时不太懂也能推断出是这个jar的问题,所以,还是好好看log,一步一步推断。。。



延伸阅读:

https://yrom.net/blog/2016/08/22/java-lang-verifyerror-on-android/

https://stackoverflow.com/questions/100107/causes-of-getting-a-java-lang-verifyerror


Android 解决华为上运行出现java.lang.VerifyError 这个问题只发现在一台华为平板上的问题,启动Application就直接闪退了,试过了其他手机都没有问题,估计是系统运行机制的问题先看看错误Log  Could not find class 'com.google.gson.JsonParser':16:34:13.316 E/dalvikvm: Could not find class 'com.google.gson.JsonParser', ... 阅读详情

相关推荐

Android 开发中的 java.lang.VerifyError 问题

检查虚拟机版本:确保你的 Android 设备上的虚拟机版本与你使用的类文件版本兼容。在本文中,我将为你解释 java.lang.VerifyError 错误的原因,并提供一些解决办法。检查依赖项:有时,java.lang.VerifyError 错误可能是由于项目依赖项之间的冲突引起的。确保你的依赖项版本是兼容的,并尽可能使用最新的依赖库版本。希望本文能帮助你解决 Android 开发中的 java.lang.VerifyError 错误。这可以帮助解决由于旧的构建文件或缓存文件残留导致的问题。

TechSavant的博客 1298

已解决java.lang.VerifyError异常的正确解决方法,亲测有效!!!

已解决java.lang.VerifyError异常的正确解决方法,亲测有效!!!

小明的Java问道之路 7593

正确解决java.lang.VerifyError异常的有效解决方法

正确解决java.lang.VerifyError异常的有效解决方法

wbajsjhhhhh的博客 3898

【Java】已解决Java中的java.lang.VerifyError异常

java.lang.VerifyError是Java中的一个严重错误,通常发生在JVM(Java虚拟机)尝试加载类时。假设我们有一个项目,它依赖了一个第三方库,并且我们升级了这个库但没有重新编译我们的项目。通过这些措施,你可以降低遇到java.lang.VerifyError异常的风险,并确保你的Java应用程序稳定运行。要解决这个问题,你需要确保所有依赖的类库都已正确升级,并且所有相关的类都已重新编译。已解决Java中的java.lang.VerifyError异常。

屿小夏.的知识博客 2326

Unity嵌套ScrollView滑动冲突解决方案:ExecuteEvents.Execute事件透传

在Unity UGUI中,竖向与横向ScrollView嵌套时出现滑动失效,本质是EventSystem事件分发机制的拦截限制。其原理在于PointerDown被外层捕获后,后续PointerMove默认不向下透传;ExecuteEvents.Execute提供了一条绕过常规冒泡流程的官方事件旁路,支持低延迟、方向自适应的精准透传。该技术具备高兼容性与零侵入特性,广泛应用于电商商品页、内容流卡片组、多级导航等需‘列表中嵌套轮播/标签’的真实场景,是解决UGUI嵌套滚动问题的核心工程实践方案。

weixin_33164198的博客 632

NC数据预处理避坑指南:从MATLAB读取到GeoTIFF导出,解决坐标翻转与值域异常

本文详细解析了NC数据预处理中的常见问题,包括MATLAB读取时的坐标翻转与GeoTIFF导出时的值域异常。通过实战案例,介绍了如何解决矩阵方向错乱、处理FillValue与scale_factor、精准移植空间参考等关键问题,帮助研究者高效完成气象数据的批量处理与GIS兼容性验证。

weixin_30788619的博客 654

java.lang.VerifyError 异常解决方法

java.lang.VerifyError 异常解决方法

dearbaba_8520的博客 861

从报错到定位:Memtest86 DQ位算法解析与实践指南

本文深入解析了Memtest86内存测试工具报错信息的解读方法,重点介绍了通过地址解析、数据转换、位比对和DQ定位四步算法,精准锁定故障DQ位的实践流程。文章以DDR4和DDR5为例,详细拆解了从十六进制报错到二进制比对的完整步骤,并提供了从单个报错分析到故障模式诊断的进阶指南,帮助用户将抽象的报错信息转化为具体的维修或排查依据。

sre5engineer的博客 486

java.lang.VerifyError解决方案

从网上下了一个源代码,导入自己的工程后,老是点击某些菜单时出现java.lang.VerifyError的错误, 网上说,这个错误是说,当"校验器"检测到一个类文件虽然格式正确,但

wangchaoqi1985的博客 1970

Anaconda报错no qt platform plugin could be initialized

今天因为在anaconda中安装了一个新包,安装成功后运行python 程序报错:no qt platform plugin could be initialized。 1.安装Anaconda3-4.2.0-Windows-x86_64,对应python版本为3.5.2,scikit learn版本是0.17。因为要用Isolation Forest算法,只有0.18以上版本scikit learn才包含此算法,所以想更新scikit learn。 conda install scikit-lear

zhang1806618的博客 1万+

MATLAB锂离子电池伪二维(P2D)模型实现

锂离子电池伪二维(P2D)模型的MATLAB实现。该模型基于Newman等人提出的经典电化学模型,考虑了固液相扩散、电荷守恒和电化学反应动力学。

hie98894的博客 1930

Maven解决java.lang.VerifyError: Expecting a stackmap frame at branch target错误

java.lang.VerifyError: Expecting a stackmap frame at branch target 71 in method com.abc.domain.myPackage.MyClass$JaxbAccessorM_getDescription_setDescription_java_lang_String.get(Ljava/lang/Object;)Lja...

xinglu31的专栏 2万+

[SoC]SoC验证中bootcode与firmware相关验证经验总结

本文总结了SoC验证中bootcode和firmware的验证经验。重点介绍了两种数据加载方法:1)使用Verilog系统函数$readmemh/$readmemb直接写入ROM/ARAM,需注意文件路径、格式和斜杠方向;2)通过Memory Hierarchy在initial块中操作,需要添加适当延时并注意路径拼接。文章还提供了在testcase phase中先读取数据到HASH再写入SRAM的示例,并强调加载后需使能edc_bypass以避免ECC错误。验证过程中需特别注意文件位置、格式要求及路径处理等

元直的博客 2497

java verifyerror_java.lang.VerifyError解决方案 Android

今天遇到这样一个bug:java.lang.VerifyError:atandroid.support.v4.view.ViewPager.infoForAnyChild(ViewPager.java)atandroid.support.v4.view.ViewPager.populate(ViewPager.java:1044)atandroid.support.v4.view.ViewP...

weixin_29280219的博客 1045

OBYC自动科目确定整理

WGI是用来重估发货的,通过比较发货时的价格和最新计算的价格,以此将所有差异过账到分配给此事务码的总账科目。是工厂还是公司,一般项目中都是使用工厂,使用工厂的意思就是物料在每个工厂下有一个价格,如果使用公司,则一个公司下的所有工厂都使用一个价格。如果该物料用的是移动平均价,那么该库存依然还存在的情况下,这个价格差异会过账到存货科目上而不会过账到存货的价格差异科目上。用于确定存货评估过账的存货冲抵科目。事务码WGR是用来重估工厂收货的,根据 计算出来的价格差异,把库存的调整过账分配给这个事务码中的总账科目。

nopicture的博客 348

YOLOv11官方代码库与预训练模型下载:介绍Ultralytics官方GitHub及模型权重(yolov11n.pt, yolov11s.pt等)

本文介绍了Ultralytics官方GitHub仓库和YOLOv11预训练模型。Ultralytics仓库是YOLO系列算法的官方实现,包含YOLOv11最新代码、预训练模型、文档和工具。仓库采用清晰的代码结构和活跃的更新策略,支持全流程开发。YOLOv11提供了5种不同规模的模型变体(YOLOv11n/s/m/l/x),在精度、速度和模型大小间权衡,适用于从移动设备到高精度检测等不同场景。各模型在COCO数据集上预训练,可直接使用或微调,满足多样化应用需求。

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 5827

关于java.lang.VerifyError的另外一种错误原因

Android开发过程中,碰到了一个crash bug,照理说,程序开发碰到crash没什么大不了,看堆栈定位原因,然后解决即可。 但是这个堆栈刚看到的时候,还是愣了一下,如下: 报了一个java.lang.VerifyError,第一步当然是看堆栈,但是这堆栈完全不在我们自己代码空间里,看上去像是启动Application的时候就挂了,照理google和baidu都搜索了一下, 网

zhuobattle的专栏 3万+

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

java.lang.VerifyError错误参考解决办法

在eclipse上遇到了java.lang.VerifyError这个错误,网上大多说是jar冲突之类的,可能也有一点关系吧,反正我把冲突的jar包解决之后还是报这个错,最后一个同事捣鼓了好久也不知所措,后来说试一下改个顺序,如下图 再运行程序,竟然成功了。 最后也无语了,这竟然跟顺序有关,这个bug隐藏是有多深啊,怪不得在网上看到有人说一个星期都没解决。 最后提醒下

hijunmeng的专栏 3460

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

java.lang.VerifyError: Cannot inherit from final classs报错

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34220623的博客 8205

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

java.lang.verifyerror问题解决

在android下需要用jxl对excel文件进行读写,之前是直接将jxl.jar包拷贝到工程目录下,然后使用“Build path-->add to build path”来将这个包添加到工程的库当中,结果却老是在实例化类的时候出现java.lang.verifyerror,百思不得其解,在网上查了,说是可能由于导入外部包的时候出现错误,于是将jxl.jar直接拖到工程的lib文件夹下,结果通过

大雀儿飞飞的专栏 3403

Android 开发中java.lang.verifyerror问题

查了很多的问题,说是jar包的问题,这个

genggeng001的专栏 831

java.lang.VerifyError: Expecting a stackmap frame at branch target

java.lang.VerifyError: Expecting a stackmap frame at branch target 51 Exception Details: Location: com/suning/ospos/pushapi/controller/PushAuthController.$jacocoInit()[Z @4: ifnonnull Reason:...

suchahaerkang的博客 3100

java.lang.VerifyError: Bad <init> method call from inside of a branch

运行Groovy脚本时,控制台报: java.lang.VerifyError: Bad method call from inside of a branch 问题原因:缺陷 缺陷编号:GROOVY-6951,JDK-8051012 已知存在缺陷JVM版本: 1.7.0 update 55 1.7.0 update 65 1.7.0 update 67 1.8.0 upd

Larmy 2159

Kotlin开发遇到java.lang.VerifyError问题记录

在使用Kotlin+协程时,编译apk会抛出java.lang.VerifyError: Verifier rejected class … 原因:某个被协程标记的supend方法使用了@JvmStatic注解,造成编译解析代码时出现Verify错误。 解决方法:将supend方法的注解去掉。 参考:https://stackoverflow.com/questions/59113152/java-lang-verifyerror-verifier-rejected-class-code-working-f

CatMan_yy的博客 4610

android开发 java.lang.VerifyError:错误

遇到java.lang.verifyerror错误 这个错误是包的问题: 虽然包是在libs下的,但是项目的一些文件内不是正确的 碰到这种错误我的纠正方法是如图: 在zxing.jar前面打上对勾 或是删除包重新导入也行!按照上面操作我的程序就不在报错就可以正常运行了

小&哥 1210
上一篇: 【转载】Android新特性介绍,ConstraintLayout完全解析
下一篇: 关于内存泄漏总结可能最全的文章
GreadRoad
博客等级 码龄15年 1粉丝 17原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值