java.lang.ClassFormatError

jb007

Mitglied
Hallo Leute,

ich habe damit begonnen unser monolithisches System in einzelne Module zu zerlegen.

Die einzelnen Module haben ihr eigenes build script und im Manifest der Core werden alle Libs und Module auf den Classpath gelegt.

Leider erhalte ich zur Laufzeit in einem Modul folgende Exception:
java.lang.ClassFormatError: Absent Code attribute in method that is not
native or abstract

Ich habe mal danach gegoogelt. Die Problemstellungen die ich dabei gefunden habe bezogen sich meistens auf JEE oder die JPA bzw. Maven. Richtig schlau bin ich daraus aber nicht geworden. Außerdem verwenden wir weder JPA noch JEE.

Könnte mir vielleicht mal Jemand erläutern was die Exception genau bedeutet und wie ich dem Problem entgegentreten könnte ?

Gruß Jens
 
Hallo,

kompilierts denn wenn du das mit Netbeans baust?
Wahrscheinlich fehlen ein paar jars (direkte / indirekt Abhängigkeiten) wenn du das versuchst mit dem Ant-Build zu bauen.
Lass dir doch mal den von Ant verwendeten Classpath ausgeben.

Gruß Tom
 
Hallo Thomas,

das kompilieren geht ohne Probleme, allerdings bin ich mit ant noch nicht so firm.
Netbeans hat da viel abgenommen.
Das bedeutet, dass ich im Moment die Core als auch die Module einzeln kompiliere.
Da fehlt mir einfach noch die Erfahrung.

Daher auch gleich eine Frage, wie kann ich mit ant den Classpath ausgeben lassen

Ausprobieren kann ich das aber leider erst morgen Früh, wenn ich in der Firma bin.

Gruß Jens
 
Habs geschafft,

es lag wirklich an einer Lib.
Allerdings lag die Lib schon auf dem Classpath. Die Lib wurde jedoch
bei einer Copy und Paste Aktion durch eine andere Lib (gleiche Lib, gleiche Version) ersetzt.

Nachdem ich diese wieder durch die bei der Modularisierung original verwendete Lib ersetzt hatte lief alles ohne Probleme.

So ganz erklären kann ich mir das allerdings nicht.....

Vielen Dank für deine Hilfe Thomas

Gruß Jens
 
Zurück