关于NoClassDefFoundError问题

报错信息

java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
        at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:303)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:316)

出现NoClassDeefFoundError的原因是   定义的时候有这个jar,运行的时候却没有找到

但是从报错信息上来看,at java.lang.ClassLoader.defineClass,找不到这个类的加载器,而且后面的那个1可能是和版本号有关,我导入的包是commons-lang 3版本的,而这个类的实现可能是再其版本的,网上看了一些资料发现3版本删除了好多旧的api,所以又导入了旧版本的jar包,问题解决

总结一下,出现Notfound或NoDefFoundError,有可能是你导入了包但是导入包的版本不对造成的

猜你喜欢

转载自blog.csdn.net/qq_33543634/article/details/81129330