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文件就與想要的不一樣!這個沒有做驗證。