关于NoClassDefFoundError解决心得
2023-12-19 00:32:49
容易混淆
NoClassDefFoundError和ClassNotFoundException
NoClassDefFoundError是引用异常,大概率是运行中找不到类的情况,也可能是其他情况。
ClassNotFoundException是类找不到,大概率是包引入问题。也有概率是被手动抛出来的。
这不是废话吗。
哈哈,提供一个思路。可以先按照这样排查。如果不是再详细排查
问题描述
Could not initialize class com.github.ltsopensource.core.support.JobUtils
此处就是初始化发生的异常,在静态块内。
解决过程
定位到此处
38行打断点
点击stackTrace,定位到异常处
发现是包了一层异常
异常处为63行
在doCompile处继续打断点
被误导的地方
此处我还以为是初始化的问题。被之前JobUtil误导了,认为是static出了问题
ClassPool pool = new ClassPool(true);
加上IDEA没有报红,于是朝着错误的地方找了好久。在static块打断点,一直没有走进去。于是继续追踪。
最终发现走到了java自己的加载方法里面了。才意识到,就是包缺失。
于是引入包,自此问题解决
<dependency>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
<version>${javassist.version}</version>
</dependency>
文章来源:https://blog.csdn.net/Ellen_Tangxiang/article/details/135061374
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!