java.lang.NoClassDefFoundError: Could not initialize class com.google.api.client.util.Data [closed]

The ways to resolve the java.lang.NoClassDefFoundError are :- Follow the link.

What is reason of NoClassDefFoundError in Java?

NoClassDefFoundError in Java comes when Java Virtual Machine is not
able to find a particular class at runtime which was available during
compile time. For example if we have a method call from a class or
accessing any static member of a Class and that class is not available
during run-time then JVM will throw NoClassDefFoundError. It’s
important to understand that this is different than
ClassNotFoundException which comes while trying to load a class at
run-time only and name was provided during runtime not on compile
time. Many Java developer mingle this two Error and gets confused.

In short NoClassDefFoundError will come if a class was present during
compile time but not available in java classpath during runtime.
Normally you will see below line in log when you get
NoClassDefFoundError:

How to resolve java.lang.NoClassDefFoundError:

  1. Class is not available in Java Classpath.
  2. You might be running your program using jar command and class was not defined in manifest file’s ClassPath attribute.
  3. Any start-up script is overriding Classpath environment variable.
  4. Because NoClassDefFoundError is a sub class of java.lang.LinkageError it can also come if one of it dependency like native library may not available.
  5. Check for java.lang.ExceptionInInitializerError in your log file. NoClassDefFoundError due to failure of static initialization is quite common.
  6. If you are working in J2EE environment than visibility of Class among multiple Classloaders can also cause java.lang.NoClassDefFoundError, see examples and scenario section for detailed discussion.

Leave a Comment