Java / Object, Class and Package
Difference Between ClassNotFoundException & NoClassDefFoundError.
Both of these errors are related to missing classes in the classpath, however the main difference lies how it originate.
ClassNotFoundException occurs when you try to load a class at runtime by using Class.forName() or loadClass() and requested class is not present in classpath. It is thrown when an application tries to load in a class through its name, but no definition for the class with the specified name could be found.
NoClassDefFoundError is encountered when the class was available at compile time but not during runtime.
More Related questions...