What is difference beween ClassNotFoundException and NoClassDefFoundError ?
Thrown when an application tries to load in a class through its string name using:
forNamemethod in class
findSystemClassmethod in class
loadClassmethod in class
but no definition for the class with the specified name could be found.
Thrown if the Java Virtual Machine or a
ClassLoaderinstance tries to load in the definition of a class (as part of a normal method call or as part of creating a new instance using the new expression) and no definition of the class could be found.
The searched-for class definition existed when the currently executing class was compiled, but the definition can no longer be found.