NoClassDefFoundError abfangen

reibi

Top Contributor
Hi kann mir jemand sagen wie ich einen NoClassDefFoundError abfangen kann ?

Uncaught exception in main:
java.lang.NoClassDefFoundError: mypackage.MyClass

mit try..catch(Throwable t) gehts irgendwie nicht


Grußlinger ;-)
 
B

bone2

Gast
NoClassDefFound sollte man eher lösen als zu versuchen ihn zu unterdrücken o_O

Da meckert doch auch schon der compiler oder? man kann keine syntax/compilerfehler fangen, nur laufzeitfehler
 

reibi

Top Contributor
Hi

NoClassDefFound sollte man eher lösen als zu versuche

Will sie nicht lösen, will nur feststellen dass es einen NoClassDefFoundError gibt.

Und VORSICHT: Ich spreche NICHT über ClassNotFoundException ... sowas kann ich ja ganz leicht abfangen



Da meckert doch auch schon der compiler oder? man kann keine syntax/compilerfehler fangen, nur laufzeitfehler

Der meckert eben nicht. Da es die Klasse zur compile und buildzeit auch gibt. Aber danach nicht mehr!
 

AlexSpritze

Bekanntes Mitglied
Da NoClassDefFoundError u.a. von Throwable abgeleitet ist, solltest du sie mit
Java:
try{
  throw new NoClassDefFoundError("Ham&Eggs");
} catch(Throwable t){
  System.out.println(t.getMessage());
}
abfangen könne? Andererseits, wenn der Error schon geworfen wird bevor dein Programm überhaupt gestartet worden ist, hast du damit natürlich keine Möglichkeit des Fangens... Da wäre vielleicht noch mehr von deinem StackTrace interessant.
 

reibi

Top Contributor
Andererseits, wenn der Error schon geworfen wird bevor dein Programm überhaupt gestartet worden ist, hast du damit natürlich keine Möglichkeit des Fangens... Da wäre vielleicht noch mehr von deinem StackTrace interessant.

hier bitteschön:

Uncaught exception in main:
java.lang.NoClassDefFoundError: sun/misc/SignalHandler
Caused by: java.lang.ClassNotFoundException: sun.misc.SignalHandler
at java.net.URLClassLoader.findClass(URLClassLoader.java:907)
at java.lang.ClassLoader.loadClass(ClassLoader.java:488)
at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:87
0)
at java.lang.ClassLoader.loadClass(ClassLoader.java:267)
FAILED to invoke JVM.

VM ist Apache Harmony

Passiert beim Aufruf über Console.

Quelltext sieht so aus:
Java:
    	SignalHandler mySH = null;
    	
    	try {
    		mySH = new SignalHandler() {
                @Override
                public void handle(Signal sig) {
                    System.out.println("SIGINT ...gedrückt, aber ignoriert");
                } // end handle()
            } // end new
        ;
		} catch (Throwable e) {
			System.out.println("Geht gar nicht !");
		}
 

AlexSpritze

Bekanntes Mitglied
Hm, keine Ahnung, aber im StackTrace stehen ja keine deiner Klassen, vermutlich wird der Error in einem anderen Thread geworfen, und zwingt die JVM zum Beenden?

Zum Fangen müsste aber in dem StackTrace eine deiner Klassen auftauchen, da könntest du dann den Error fangen.
 

reibi

Top Contributor
Hi guter Hinweis zwischen den Zeilen und unter dem Blumentopf ;-) :

Hm, keine Ahnung .. im StackTrace stehen ja keine deiner Klassen ... anderen Thread geworfen ..

Obwohl Du keine Ahnung zu haben vorgibst ;-) kannste einem(meinereins) totzdem drauf bringen.

Also:
eine Abfrage wie
[Java]Class.forName("sun.misc.SignalHandler");[/code]
bringt allein gar nichts, weil die nur auf ClassNotFoundException abprüft.

Bei ner Fallunterscheidung ob die Klasse da ist oder nicht da, versucht mans zu instanziiren.
Ohne das die Laufzeitumgebung dort drüber geht, brihct er ab weil die Klasse die grad gestartet ist das abprüft, fass der Aufruf sich darin befindet.

Also hab ichs in ne andere Klasse, als Statische Methode, ausgelagert. Die Laufzeitumgebung prüft diese dann erst auf "NoClassDefFoundError" wenn diese Klasse(mit der statischen Methode) instatiirt wird.
Das muss aber gar nicht sein, wenn ich schon eine ClassNotFoundException bekommen habe, die mir sagt die Klasse(o.g.) gibts gar nicht.

Gruss an alle ;-)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D NoClassDefFoundError: Could not initialize class Allgemeine Java-Themen 0
G java.lang.NoClassDefFoundError: org/aspectj/lang/Signature Allgemeine Java-Themen 2
volcanos JavaFX-Programme nur in NetBeans selber ausführbar ! command_line: NoClassDefFoundError Allgemeine Java-Themen 39
S Compiler-Fehler NoClassDefFoundError Allgemeine Java-Themen 4
M NoClassDefFoundError Allgemeine Java-Themen 6
F Fehlermeldung: java.lang.NoClassDefFoundError: org/apache/commons/net/ntp/NTPUDPClient Allgemeine Java-Themen 6
T Compiler-Fehler NoClassDefFoundError beim Laden einer Class Allgemeine Java-Themen 11
E HILFE !! Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/io/FileUtils Allgemeine Java-Themen 4
C Hilfe bei NoClassDefFoundError Allgemeine Java-Themen 14
J Exception in thread "main" java.lang.NoClassDefFoundError Allgemeine Java-Themen 4
H Java Mail Fehlermeldung: java.lang.NoClassDefFoundError: javax/mail/internet/AddressException Allgemeine Java-Themen 5
Crooda Compiler-Fehler java.lang.NoClassDefFoundError bitcoinj Allgemeine Java-Themen 1
L Eigenener ClassLoader wirft java.lang.NoClassDefFoundError Allgemeine Java-Themen 0
A Classpath LWJGL+NiftyGui und der NoClassDefFoundError Allgemeine Java-Themen 1
S java.lang.NoClassDefFoundError Allgemeine Java-Themen 5
T NoClassDefFoundError... Allgemeine Java-Themen 5
G Json-Lib NoClassDefFoundError Allgemeine Java-Themen 3
T ProcessBuilder (java.lang.NoClassDefFoundError) Allgemeine Java-Themen 2
E NoClassDefFoundError: javax/microedition/io/Connection Allgemeine Java-Themen 2
P NoClassDefFoundError sigar Allgemeine Java-Themen 5
B NoClassDefFoundError Allgemeine Java-Themen 5
O NoClassDefFoundError Allgemeine Java-Themen 5
N NoClassDefFoundError bei JasperReports Allgemeine Java-Themen 2
G NoClassDefFoundError: java/lang/Object Allgemeine Java-Themen 4
S JOGL NoClassDefFoundError und Maven Allgemeine Java-Themen 4
G NoClassDefFoundError Allgemeine Java-Themen 3
M NoClassDefFoundError Allgemeine Java-Themen 9
E Java Fehlermeldung java.lang.NoClassDefFoundError Allgemeine Java-Themen 3
F NoClassDefFoundError Allgemeine Java-Themen 5
F An Profis: NoClassDefFoundError bei 1 von 20 Usern Allgemeine Java-Themen 16
T NoClassDefFoundError, warum? Allgemeine Java-Themen 6
Jens Hibbeler Klasse Laden, aber wie? NoClassDefFoundError? Allgemeine Java-Themen 3
CodingBerlin Mouse Clicks abfangen Allgemeine Java-Themen 4
X jvm exception abfangen und an externes Programm schicken Allgemeine Java-Themen 4
S equals-Methode bestimmer Klassen abfangen Allgemeine Java-Themen 2
E Exceptions abfangen und dann Programm stoppen - aber wie? Allgemeine Java-Themen 2
T Daten über port abfangen mit proxy server Allgemeine Java-Themen 12
M Swing java command line abfangen Allgemeine Java-Themen 8
C Swing Abfangen von Fehlern in GUI Allgemeine Java-Themen 4
R Threads Exceptions von Threads abfangen im ThreadPool Allgemeine Java-Themen 5
C Kopiervorgang abfangen Allgemeine Java-Themen 10
T Methoden In Konsole tasten abfangen? Allgemeine Java-Themen 4
B Windows Shutdown abfangen Allgemeine Java-Themen 10
O Input/Output CMD-Ausgabe abfangen und in Datei speichern Allgemeine Java-Themen 8
D Nullpointer abfangen Allgemeine Java-Themen 7
V JNI Call Crash verhindern (abfangen) Allgemeine Java-Themen 2
E JAVA URL abfangen und weiterleiten? Filter? Allgemeine Java-Themen 6
F Alle Exceptions abfangen Allgemeine Java-Themen 4
N BlueJ Abfangen vom Beenden Allgemeine Java-Themen 7
B Alle Exceptions auf einmal abfangen Allgemeine Java-Themen 4
B Exception wird geworfen, ich darf sie aber nicht abfangen. Allgemeine Java-Themen 10
P [SWT] Copy, Paste und Cut abfangen Allgemeine Java-Themen 6
T WeakHashMap: Wie "null" effizient abfangen? Allgemeine Java-Themen 5
R Loading-Thread und Exceptions abfangen. Allgemeine Java-Themen 4
G Tastatursignale abfangen oder ist Java dafuer zu abstrakt? Allgemeine Java-Themen 12
I Das EOF (Ctrl + Z) abfangen Allgemeine Java-Themen 8
E programm im background tastendruck abfangen Allgemeine Java-Themen 4
H NullPointerException trotz Abfangen von null? Allgemeine Java-Themen 9
M Speichern von Word als Event abfangen Allgemeine Java-Themen 7
W Das schließen des JFrame abfangen, wiei? Allgemeine Java-Themen 6
P Nicht terminierende Methoden abfangen - timeout ? Allgemeine Java-Themen 3
reibi Aktion Taste gedrückt abfangen Allgemeine Java-Themen 9
G Bildschirmänderung abfangen? Allgemeine Java-Themen 4
J Method.invoke -> Exceptions der Funktion abfangen Allgemeine Java-Themen 5
B Fehlermeldung von dispatcher.forward abfangen Allgemeine Java-Themen 2
P CLAmp-Ausgaben abfangen Allgemeine Java-Themen 2
H Programmterminierung abfangen Allgemeine Java-Themen 4
R Alle Konsolenausgaben abfangen Allgemeine Java-Themen 8
G outOfMemoryError beim Einlesen einer Datei abfangen? Allgemeine Java-Themen 13
F Überlauf abfangen Allgemeine Java-Themen 1
J ToolTipText Event abfangen Allgemeine Java-Themen 5
M unterschiedliche Betriebssysteme abfangen Allgemeine Java-Themen 3
C LinkedList Exception abfangen Allgemeine Java-Themen 8
0 StackOverflow abfangen Allgemeine Java-Themen 15
M Runtime.getRuntime().exec() - Fehler abfangen Allgemeine Java-Themen 5
L Tastatureingaben abfangen Allgemeine Java-Themen 6
M err oder alle Exceptions eines Programms abfangen Allgemeine Java-Themen 4

Ähnliche Java Themen

Neue Themen


Oben