在环境上发布完代码,登录的时候发现报错,查看日志文件,发现问题是java.lang.NoClassDefFoundError: Could not initialize class XXX,这个类是一个自己写的工具类,很久没有动过了,不可能说突然就不行了
之后百度了一下,有些人这个错误是无法初始化一些其他jar包的类,说是一些jar包冲突之类的问题。但是我这里是自己的工具类,应该不是这个问题,之后又看了一些其他的回答,总结起来大概就是无法初始化的类里某些静态变量或者方法出现了问题
如果你的类里面使用了静态变量,是从配置文件中加载的,那么就检查一下配置文件中是否有对应的配置,看看是否能正确获取到
我这里的问题是在工具类中从spring上下文获取了一个dao,最后发现在配置文件中mybatis的配置有问题,最后无法正确获取到这个dao,导致报java.lang.NoClassDefFoundError这个错误
如果你也是很久没有动过的类似工具类这种的代码报了这个问题,不妨检查一下代码中的一些静态变量或方法,也有可能是静态块中,是否因为一些其他的改动导致出现问题,进而导致这个类报java.lang.NoClassDefFoundError: Could not initialize class XXX的错误