Hallo,
Ich kämpfe grade mit einem NoClassDefFoundError. Habe ein Programm aus mehreren Klassen geschrieben, die alle als *.java im selben Ordner liegen und deren Dateinamen den Klassennamen entsprechen.
Starte ich mein Programm, so erhalte ich
C:\...\>java Main
Wieviel Toechter gibt es? 2
Exception in thread "main" java.lang.NoClassDefFoundError: Schatz
at RekDaten.(RekDaten.java:20)
at IO.beginnEingabe(IO.java:28)
at Verteilung.setBeginn(Verteilung.java:72)
at Main.main(Main.java:23)
Das erste ist eine Eingabe, die so stimmt. Dann der Fehler.
Daraufhin wollte ich die Funktion der Konstruktoren prüfen und habe in jeden ein System.out.println(„blabla erzeugt.“); eingefügt und vor der erste Eingabe, die ja erreicht wird, von jeder Klasse eine Instanz erzeugt. Wenn ich jetzt das Programm starte, bekomme ich aber genau dieselbe Ausgabe wie oben gezeigt - die print-anweisung in den Konstruktoren, die eigendlich aufgerufen werden sollten, wird nicht ausgeführt. Aber diesmal kommen auch keine zusätzlichen NoClassDefFoundErrors, obwohl ich testweise schon vor der Stelle, an der der Fehler auftritt, eine Instanz von „Schatz“ erzeugt habe…
Ich verstehs nicht. Kann mir bitte jemand nen Tipp geben?
Ja, ich habe gegoogelt, und man findet einiges. Aber mein Problem wurde nirgendwo behandelt - Classpath ist richtig gesetzt, die Klassen heißen richtig und liegen im richtigen Ordner. Andere selbstgeschriebene Programme funktionieren.
Vielen Dank schonmal,
Giogio