java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter

java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter

Problem

In der Ruhezustand-Entwicklung wird häufig die folgende Fehlermeldung angezeigt.

SEVERE: Context initialization failed
org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'sessionFactory' defined in ServletContext resource
[/WEB-INF/classes/config/database/spring/HibernateSessionFactory.xml]:
Invocation of init method failed; nested exception is

Caused by: org.hibernate.HibernateException:
Unable to instantiate default tuplizer [org.hibernate.tuple.entity.PojoEntityTuplizer]
    ...
    ...
Caused by: java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    ...
Caused by: java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.(I)V
    at net.sf.cglib.core.DebuggingClassWriter.(DebuggingClassWriter.java:47)
    ...

Lösung

Das "Unable to instantiate default tuplizer [org.hibernate.tuple.entity.PojoEntityTuplizer" ist eine generische Fehlermeldung, die aus vielen Gründen verursacht werden kann. Sie müssen sich also die letzte Zeile ansehen, die den Fehler verursacht hat.

Caused by: java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter

Die Hauptursache sindold asm.jar library, z. B. "asm-1.5.3.jar". Nurupgrade the asm library in der neuesten Version entfernen die Fehlermeldung. e.g, ‘asm-3.1.jar’.