遇到一個問題,報NoClassDefFoundError,以下圖:java
NoClassDefFoundError和ClassNotFoundException區別web
咱們常常被java.lang.ClassNotFoundException和java.lang.NoClassDefFoundError這兩個錯誤迷惑不清,儘管他們都與Java classpath有關,可是他們徹底不一樣。NoClassDefFoundError發生在JVM在動態運行時,根據你提供的類名,在classpath中找到對應的類進行加載,但當它找不到這個類時,就發生了java.lang.NoClassDefFoundError的錯誤,而ClassNotFoundException是在編譯的時候在classpath中找不到對應的類而發生的錯誤。ClassNotFoundException比NoClassDefFoundError容易解決,是由於在編譯時咱們就知道錯誤發生,而且徹底是因爲環境的問題致使。而若是你在J2EE的環境下工做,而且獲得NoClassDefFoundError的異常,並且對應的錯誤的類是確實存在的,這說明這個類對於類加載器來講,多是不可見的。服務器
https://blog.csdn.net/qq_28483283/article/details/78404984spa