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