java.lang.NoClassDefFoundError

今天抛出这么一个错误,突然间我发现和之前的 类未找到异常java.lang.ClassNotfoundException还有点不一样。
NoClassDefFoundError错误的发生,是因为Java虚拟机在编译时能找到合适的类,而在运行时不能找到合适的类导致的错误。

java.lang.NoClassDefFoundError: org/apache/mina/core/service/IoConnector
    at com.sinosoft.lis.taskservice.distribution.loadbalance.ServerLoadBalance.updateServerPerformanceInfo(ServerLoadBalance.java:110) ~[lis-module-task-bl-7.1-SNAPSHOT.jar:na]
    at com.sinosoft.lis.taskservice.distribution.loadbalance.ServerLoadBalance.getAllocateServerInfos(ServerLoadBalance.java:130) ~[lis-module-task-bl-7.1-SNAPSHOT.jar:na]

NoClassDefFoundError错误发生的原因如下几种:
1.db.properties不在classes文件下
2.检查日志文件中是否有java.lang.ExceptionInInitializerError这样的错误,NoClassDefFoundError有可能是由于静态初始化失败导致的错误。
网上找了许多方法,比较乱,后来发现了一个比较好的博客,对这个知识点讲的还算清楚
参考:https://blog.csdn.net/jamesjxin/article/details/46606307


看到这里,我重启了一下项目,考虑是不是我刚修改的底层类没有加载进来,可是用到了,然后出的错、
重启没有解决问题。

2019年12月12日09:21:14
找到问题和原因,我这个类是分布式服务器调度的时候才能加载的类,我本地没有配置负载均衡服务器,暂时先搁置
打算使用单线程本机跑项目

原文地址:https://www.cnblogs.com/bigbaby/p/12027729.html