Testen der IDE SharpDevelop

Ich bin mal gespannt, ob die IDE SharpDevelop eine echte alternative zu der Express Edition von Microsofts Visual Studio ist. Der erste Eindruck ist schon mal vielversprechend. Aber ich bin mal gespannt, wie sich das Arbeiten mit C#-Projekten mit vielen Klassen verhält. Das Installationspaket von ca. 18Mb finde ich schon mal gelungen schlank.

Freu mich schon darauf die ersten Anwendungen auf unserer Seite bereitzustellen.

Eclipse ClassNotFound Exception bei Plugins

Eclipse zeigt eine ClassNotFound Exception wenn eine Klasse über zwei Plugins hinweg geladen wird. Dieses Problem trat bei mir auf, als ich zwei abhängige Plugins in Eclipse eingebunden hatte (Plugin A verwendet Actions aus Plugin B).

Beide Plugins können stand alone gestartet werden. Nur erweitert Plugin A über eine Action eine bestehende Action aus Plugin B.

Das Problem was nun, dass die Action zwar startete, aber sofort eine ClassNotFound Exception zeigte. Nach langem probieren stellte ich fest, dass wenn ich das jar, in welchem die nicht gefundene Klasse lag, aus dem Plugin A in das Plugin B wandern lasse, dass Problem nicht mehr auftritt.

Ich kann mir das nur so erklären, dass das OSGI zwar die Action aus Plugin A über den Extension Point startet, dann aber weil das Plugin B die Basisklasse für die Action stellt, sofort an den ClassLoader von Plugin B übergibt. Nur in diesem Fall ist die Meldung über die fehlende Klasse korrekt und der Gegentest indem das jar in Plugin B bekannt gemacht wird, untermauert dieses.

Ich konnte die Spezifikation oder das Design über dieses Verhalten bisher noch nicht finden. Wenn jemand drüber genauere Infos hat, wäre ich sehr dankbar. 🙂

Greez

Promotos