java.lang.ExceptionInInitializerError

lernen.2007

Erfahrenes Mitglied
Hallo Leute,
ich habe so eine Funktion:
private static final void getComponent(String className)
{
try
{
Class componentClass = Class.forName(className);
}
catch (ClassNotFoundException fe)
{

}
Aber ich bekomme folgende Fehlermeldungen:
java.lang.ExceptionInInitializerError
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:141)


Der springt in catch Block auch nicht rein.Warum?Wo mache ich falsch?
Danke
 
1. Du bekommst einen Error, der ist keine Sub-Klasse von ClassNotFoundException, darum landest Du nicht im catch-Block.

2. Dein Error-Objekt besagt, daß Deine Klasse nicht erzeugbar ist (String className). Ich nehme an, diese übergebene Klasse wurde mit einer höheren Java-Version kompiliert, als Du jetzt einsetzt.
 
Häng mal den Block noch ein dein bestehendes Try/Catch ran.
Und dann musst du natürlich auch eine Fehlerbehandlung machen.
Aber das löst nicht unbedingt dein Problem. Denn wenn es einen Error
gibt, sollte man eher versuchen ihn zu vermeiden, als ihn zu catchen.
Vielleicht solltest du nochmal nachschauen, ob
className
auch wirklich beinhaltet was componentClass gerne hätte.

Code:
 catch (ExceptionInInitializerError eie)
 {
 
}
 
Zuletzt bearbeitet:
Hallo,

wenn ich zwei Projekte habe: Projekt1 & Projekt2. Ich will eine Klasse von Projekt1 in Projekt2 importieren. Wie geht es eigentlich?


Danke
 
Ich habe es mit import hinbekommen.


ExceptionInInitializerError hängt es mit static Variablen zusammen oder nicht?

Danke
 
Hallo!

EIn ExceptionInInitializerError besagt, dass ein Fehler beim Iinitialisieren der Klasse aufgetreten ist... Ursache dafuer kann beispielsweise sein, dass eine Unbehandelte Ausnahme in einem static{....} Initalizer Block geworfen wurde oder bei der Initialsierung eines static Fields eine Ausnahme auftrat.

Gruss Tom
 
Zurück