Firmeninternes Plugin unter Eclipse 3.3

deLeet

Grünschnabel
(eben gabs nen Connection Timeout, daher existiert das Thema 2x)
Hallo Leute

Ich habe schon viel dazu gelesen, bin mir aber nicht 100%ig sicher, ob der Sachverhalt so ist, wie ich denke.

Ich schreibe an einem Plugin für die Firma, das bestimmte XML Dateien visualisieren soll. Die Visualisierung bezieht sich natürlich auf ein schon vorhandenes Datenmodell (XML wird über einen Parser eingelesen und in Java-Objekte umgewandelt). So, nun könnte ich natürlich
1. das Datenmodell kopieren und dort meine Vis. implementieren, was aber blöd ist, weil 1. kein MVC, 2. unübersichtlich und 3. redundant
2. das Datenmodell als jar referenzieren (1MB), was aber blöd ist, weil redundant
3. dem Plugin irgendwie beibringen, dass es da ein Projekt gibt, in dem sich die Sourcen befinden, was gut wäre, weil 1. MVC, 2. übersichtlich und 3. nicht redundant

Ist 3. aber möglich und wenn ja, wie?

es gibt - habe ich heute gelesen - von OSGi her diese "Buddies", aber ich weiß nicht, ob mir das weiterhilft, wenn das Datenmodell nicht als Plugin umgesetzt ist.

thx&grz
Kay
 
wäre für eine schnelle Antwort sehr dankbar, da ich ein wenig unter Zeitdruck stehe und ansonsten anfangen muss, 2. zu implementieren
 
Hm, du willst ein Plugin für Eclipse schreiben? Dann solltest du dich schnell mit Eclipse Internas auseinandersetzen. Die Dinger heißen übrigens Bundles. Und wenn du irgendwas mit XML machen willst muss das XML wohl auch in ein Bundle ;). Zum anderen gibt es nette Frameworks für Eclipse (EMF, GMF, GEF) die die Entwicklung grafischer Editoren für (Meta)modelle sehr leicht machen - vorrausgesetzt, man kennt sich mit den Frameworks und grundsätzlichen Prinzipien von Eclipse (Extensionpoints z.B.) aus.

Vielleicht noch 2 Kleinigkeiten:

1. Zeitdruck ist immer ;)
2. In Eclipseprogrammierung arbeitet man sich nicht in einer Woche ein. Da bedarf es schon etwas mehr Zeit. Überhaupt nicht zu vergleichen mit Swingentwicklung o.ä. Schon eine ziemlich eigene Welt...

Es gibt wohl ein paar gute Bücher zu dem Thema (auch ein paar schlechte, wie ich mir hab sagen lassen). Ansonsten sind auf den Eclipseseiten massenhaft Tutorials zu finden. In den üblichen verdächtigen Javamagazinen sind auch immer mal wieder Artikel mit Beispielcode.

Gruß
Ollie
 
hmm also ich weiß nicht, ob du meine Frage richtig verstanden hast.

Es geht nur darum, ob man mit einem selbstgeschriebenen Plugin auf Projekte referenzieren kann nur anhand des Namens (dass ich also sagen kann, "wenn es ein Projekt gibt mit Namen "abc", dann gibt es auch die Klassen abc.def etc. die musst du nutzen").
Ansonsten muss ich die Sourcen von abc in ein jar packen zB und dann ins plugin einbinden
 
Wenn du nix von XML IN PROJEKTEN erwähnst, kann ich schlecht riechen, dass es darum gehen soll, einen Editor für spezielles XML anzubieten. ;) Daher war ich davon ausgegangen, ihr habt irgendein Metamodell in XML und braucht nen Editor dafür.

Ich weiß nicht, ob du Eclipse richtig verstanden hast. Für solcherlei Probleme gibt es ProjectFacettes / ProjectNatures. Damit kannst du dann ein Projekt versehen und dann mit deinem Plugin für bestimmte Funktionalität auf bestimmten Dateien / -typen anbieten.

Beispiel SpringIDE. Dieses Plugin wird aktiv, sobald man für ein Projekt die Springnature aktiviert hat. Danach ist es möglich, den normalen XML Editor für Springkonfigurationsfiles wesentlich restriktiver zu nutzen (Vorschläge für Klassennamen in XML Attributen usw.)

Gruß
Ollie
 
Zurück