Versionsprobleme beim Erstellen eines Plugins

schnurpsel

Mitglied
Hallo,

habe eine grundsätzliche Frage zur Entwicklung von Plugins zu bestehenden Anwendungen.

Ich erstelle ein Plugin zu einer Eclipse3.3-Anwendung, welche als TargetPlatform angegeben ist. Das funktionierte bisher soweit auch ganz gut. Nun möchte ich in meinem Plugin EMF für Eclipse 3.5 verwenden. Also Eclipse 3.5 installiert, Quellcode geladen und als TargetPlatform zusätzlich Eclipse 3.5 angegeben. Nun bekomme ich "Package uses conflict". Sobald ich diese Packages aus der TargetPlatform manuell entferne (Häkchen raus), werden die anderen Klassen nicht mehr erkannt.

Wie geht man mit diesem Fall um? Ich vermute, dass es nicht so gedacht ist, dass ich einfach die Anwendung und Eclipse als TargetPlatform eintrage. Aber ich weiß auch nicht, wie man es richtig macht :bahnhof:

Viele Grüße
schnurpsel
 

Wildcard

Top Contributor
Gibt es einen Grund dafür? EMF ist ein sehr zentraler Bestandteil, es kann zu Problemen führen die neue Version in eine alte Plattform zu installieren.
Gib beim editieren der Target Platform einfach eine Software Site an (die Galileo Update Site), wähle das EMF Feature aus und das war's.
 

schnurpsel

Mitglied
so langsam macht mich das wahnsinnig :cry:

Hatte nach meinem ersten Post ein fiese "Lösung" gefunden. Die benötigten plugins über "plug-in from existing jar archives" eingebunden und dann konnte ich die Funktionen erstellen (allerdings funktioniert das Databinding an sich auch da noch nicht) und über debug auch testen. Die Funktionalität vor der Umstellung von jaxb auf emf war somit fast wieder vorhanden. Ein Export dieses ganzen zugegebnermaßen komischen Konstrukts und Ausführung im Zielprogramm brachte dann noclassdeffounderrors etc.

Also rückgängig gemnacht und so eingebunden, wie du vorgeschlagen hast. Dann über required plugins die benötigten plugins hinzugefügt und das Projekt meckert nicht mehr wegen fehlenden plugins. Beim debuggen aber dann bereits die folgenden Meldungen

Java:
!ENTRY org.eclipse.equinox.simpleconfigurator 4 0 2010-02-10 15:50:20.409
!MESSAGE 
!STACK 0
org.osgi.framework.BundleException: Exception in org.eclipse.equinox.internal.simpleconfigurator.Activator.start() of bundle org.eclipse.equinox.simpleconfigurator.
[..]
Root exception:
java.lang.NoClassDefFoundError: org/eclipse/osgi/service/resolver/VersionRange

!ENTRY org.eclipse.osgi 4 0 2010-02-10 15:50:20.440
!MESSAGE Bundle [email]initial@reference:file:../../../1006_JAVA/project_3.5/.metadata/.plugins/org.eclipse.pde.core/.bundle_pool/plugins/org.eclipse.equinox.simpleconfigurator_1.0.101.R35x_v20090807-1100.jar[/email]/ [2269] is not active.

!ENTRY org.eclipse.osgi 4 0 2010-02-10 15:50:20.440
!MESSAGE Application error
!STACK 1
java.lang.IllegalStateException: Unable to acquire application service. Ensure that the org.eclipse.core.runtime bundle is resolved and started (see config.ini).

Danke für dein Hilfe Wildcard, aber ich glotz da echt langsam rein wie eine Kuh in ein Uhrwerk. Man kann hier was einstellen und dort was hinzufügen, dann an Stelle X ein Häkchen setzen oder auch nicht. Aber welche die richtigen Stellen zum Umsetzen sind, weiß ich nicht. :bahnhof:
 

Wildcard

Top Contributor
Was tust du denn da? :)
Deine Target Platform soll doch 3.3 sein? Das ist allerdings ein 3.5 Bundle.
Definier deine Target Platform als eine 3.3 Eclipse Installation und füge dann nur die EMF Runtime von entweder der Galileo, oder der EMF Update Site hinzu.
 

schnurpsel

Mitglied
Ich weiß auch nicht ... eigentlich mache ich nur das was du vorgeschlagen hast. Hier mal Schritt für Schritt, was ich tue.

1. Eclipse 3.5. geöffnet mit meinem Workspace
2. TargetPlatform eingestellt über "An installation (such as an Eclipse SDK) in the local file system. The installed plug-ins will be added to the target definition." Hier ist das Zielprogramm angegeben, welches mit 3.3 erstellt wurde.
3. Es sind jetzt alle EMF-Dinge bis auf das Databinding an sich umgesetzt (einige EMF-Funktionen werden auch im Zielprogramm verwendet, weshalb die notwendigen Bundles vorhanden sind).
4. kleiner Zwischentest --> Plugin lässt sich debuggen
5. Databinding benötigt nun import org.eclipse.emf.databinding.EMFObservables. Hier kommt die Meldung "The import org.eclipse.emf.databinding.EMFObservables can not be resolved".
6. Also über Target Platform ein "Add" gemacht, die Software Site von Galileo angegeben und nur "EM - Eclipse Modeling Framework SDK" angegeben.
7. Reload des Ganzen, import von EMFObservables ist möglich.

Ergebnis: Starten des Plugins im Debug liefert mir die im zweiten Beitrag genannten Fehlermeldungen ???:L
 

Wildcard

Top Contributor
Dann schau dir mal genau deine Launch Config an, denn da ist offensichtlich ein 3.5 Bundle enthalten
org.eclipse.pde.core/.bundle_pool/plugins/org.eclipse.equinox.simpleconfigurator_1.0.101.R35x_v20090807-1100.jar
Wenn deine Target Platform 3.3 ist dürfte es ja nicht enthalten sein.
Ist es möglich das das Produkt das du als TP eingebunden hast schon mit falschen Bundles gebaut wurde?
 

schnurpsel

Mitglied
Hallo,

so das funktioniert jetzt endlich. Durch das viele Rumprobieren hatten sich tatsächlich 3.5. Bundles eingeschlichen. Habe alles aufgeräumt und jetzt sind diese Probleme weg.

Vielen Dank für deine Hilfe und Geduld Wildcard :toll:

Grüße
schnurpsel
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Eclipse Probleme beim Ausführen eines Programms Plattformprogrammierung 3
G Nullpointer im Debugger, jedoch nicht beim normalen Starten Plattformprogrammierung 12
W Eclipse vergißt beim Exportieren Resources-Ordner Plattformprogrammierung 11
C Eclipse: Notification beim umbennen von Methoden? Plattformprogrammierung 4
M OSGi Probleme / Unklarheiten beim laden von DLL's Plattformprogrammierung 4
dzim OSGi Problem beim Verwenden von Declaratice Services Plattformprogrammierung 18
L RCP Exception beim Ausführen von BIRT Application Plattformprogrammierung 2
Mike90 Error beim Öffnen einer RCP-App Plattformprogrammierung 2
W SWTException beim Schließen einer ViewPart Plattformprogrammierung 13
M EMF Model Transaction Fehler beim Updaten eines Graphiti-Pictogramms Plattformprogrammierung 2
L RCP Detached View beim Starten des RCPs? Plattformprogrammierung 3
lumo RCP Beim wechsel der Perspektive automatisch Views aktivieren Plattformprogrammierung 6
X b3 aggregator - Erfahrungen beim spiegeln von p2 Update Sites Plattformprogrammierung 10
jemandzehage Kurze Fehlernachricht beim starten in Eclipse Plattformprogrammierung 5
dzim Veränderte Abhängigkeiten beim Umstieg von 3.5.2 auf 3.6.1 Plattformprogrammierung 9
J RCP, Fehler beim MultiPageEditor, Widget is disposed Plattformprogrammierung 4
G Probleme beim Export Plattformprogrammierung 2
dzim Problem beim neuanlegen von Composites Plattformprogrammierung 4
S Plugin: View beim Button-Klick austauschen Plattformprogrammierung 7
K Keine EXE beim Export Plattformprogrammierung 10
M Teilweise Probleme beim Updaten von Plugins Plattformprogrammierung 3
S View speichern/laden beim schließen Plattformprogrammierung 14
B Simple Action beim Speichern in Eclipse... Plattformprogrammierung 2
M Problem beim Zugriff auf Klasse aus Fragment in einem anderen Plugin Plattformprogrammierung 3
N Beim starten addPartListener() benutzen Plattformprogrammierung 2
dzim Nerviges Gepiepe beim Nutzen von KeyListenern & Scrollbare Composites Plattformprogrammierung 2
dzim java.lang.ClassNotFoundException beim laden eines Plugins Plattformprogrammierung 10
T [RCP] Was passiert genau beim laden eines Plugins? Plattformprogrammierung 4
dzim Fehler beim starten eines Produkts Plattformprogrammierung 5
V Eclipse RCP Encoding beim Export Plattformprogrammierung 4
V Ich brauche hilfe beim Eclipse RCP Export Plattformprogrammierung 8
L0MiN Wie kann ich ein Klassendiagramm aus Eclipse heraus erstellen? Plattformprogrammierung 5
B Neuen Server erstellen Plattformprogrammierung 6
Androbin [jMonkeyEngine] Einfaches Modell erstellen Plattformprogrammierung 2
S Wie lauffähige .jar-Datei mit Netbeans für Java3D Anwendung erstellen? Plattformprogrammierung 8
maestr0 WorkingSets programmatisch erstellen Plattformprogrammierung 5
L RCP GEF Animation erstellen? Plattformprogrammierung 6
L RCP GEF Figure erstellen? Plattformprogrammierung 7
M RCP Export Feature / JARs signieren / JNLP erstellen mit Buckminster?! Plattformprogrammierung 5
F Verzeichnis mit Xpand erstellen Plattformprogrammierung 2
S RCP Daten aus einem File auslesen, und daraus ein neues Objekt erstellen! Plattformprogrammierung 4
Geeeee (Semi-)Automatisch Target Platform erstellen Plattformprogrammierung 16
S Aus vorhandenem Quellcode das Project erstellen Plattformprogrammierung 2
H Eclipse-Plugin erstellen Plattformprogrammierung 22
B mit eclipse eine PDF erstellen Plattformprogrammierung 1
L PopUpMenu über Extension Points erstellen. Plattformprogrammierung 2
T Erstellen eines "Ersetzten Plugin" aus GEF Plattformprogrammierung 2
Spot84 ecore konforme xml datei erstellen Plattformprogrammierung 7
R Eclipse RCP - Plugin erstellen Plattformprogrammierung 2
S GMF erstellen Plattformprogrammierung 19
S GEF in Eclipse Ganymede erstellen Plattformprogrammierung 5
G Jar Datei in Eclipse erstellen mit Ressourcen Ordner Plattformprogrammierung 9

Ähnliche Java Themen

Neue Themen


Oben