Java出现ClassNotFoundException原因


 

ClassNotFoundException 意思就是找不到指定的class。 

遇到的场景:
1、调用class的forName方法时,找不到指定的类
2、ClassLoader 中的 findSystemClass() 方法时,找不到指定的类
3、ClassLoader 中的 loadClass() 方法时,找不到指定的类

package test;

public class test {
     public static void main(String[] args) {
          try {
               Class.forName("test666.hello");
          } catch (ClassNotFoundException e) {
               e.printStackTrace();
          }
     }
}

解决办法:
检查类名是否正确、或是否存在该类。

补充:NoClassDefFoundError
常见的场景就是:
1、类依赖的class或者jar不存在
2、类文件存在,但是存在不同的域中
3、大小写问题,javac编译的时候是无视大小的,很有可能你编译出来的class文件就与想要的不一样!这个没有做验证。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM