Frage

Ich entwickle eine Java-Plugin für ein vorhandenes Java-Programm. Das bestehende Programm verwendet eine spezielle Version von eclipse.uml2. * Und mein Plugin tut das auch. Leider muss ich eine neuere Version für mein Plugin.

Um das Plugin zu laufen, muss ich es in eine Jar-Datei exportieren (mit allen Gläsern verpackt). Dann führt das Programm es. . Aber irgendwie das neue eclipse.uml2 * scheint mit dem Programm zu stören -> stürzt

.

Gibt es eine Möglichkeit zu „trennen“ beiden Versionen der JAR-Dateien?

War es hilfreich?

Lösung

Ein Ansatz wird eine Lade benutzerdefinierte Klasse in Ihrer Anwendung zu verwenden. Dies kann sehr leicht Fehler einführen, der Spur schwierig sind, so kümmern.

http://www.devx.com/Java/Article/31614/1954

Andere Tipps

Dies ist das genaue Problem OSGi zu lösen versucht. Wäre es möglich sein, die Java-Anwendung auf einem anderen Plugin-Plattform zu überarbeiten?

Das wird schwierig sein. Sie versuchen, möglicherweise Klassenlader Tricks verwenden beide Versionen der eclipse.uml.* Klassen zu ermöglichen, in der gleichen JVM geladen werden. Aber so weit wie die JVM sie verschiedene Gruppen von Klassen wären betroffen wäre, und das Plugin und die Basis Java-Anwendung würden der Austausch von Instanzen nicht in der Lage sein.

Es ist wahrscheinlich einfacher (und weniger riskant ... im Hinblick auf die Wahrscheinlichkeit des Erfolgs) neu zu erstellen (und ggf. modify) entweder das Basisprogramm oder Ihr Plugin, so dass sie beide arbeiten mit der gleichen Version der eclipse.uml2.* Klassen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top