eclipse RCP Anwendung programmatisch / aus einem anderen Programme starten?

erazor85

Mitglied
Hallo,

ich habe eine kleine eclipse RCP Anwendung geschrieben und möchte diese gerne aus einer anderen heraus starten. Meine suche ergab leider keine Treffer, die mir weitergeholfen haben.

Ich habe soweit herausgefunden, dass die Klasse org.eclipse.equinox.launcher.Main.class den Startvorgang übernimmt. Allerdings weiß ich nicht genau welche Argumente ich übergeben muss.

Kann mir da jemand helfen oder weiß jemand einen anderen Weg?

Danke für eure Hilfe
erazor
 
Hi,

danke für die schnelle Antwort.
Diese Möglichkeit habe ich mir auch schon überlegt, allerdings möchte ich nach dem Start Zugriff auf die Eclipse Komponenten (Views), daher funktioniert es mit Runtime.exec() nicht wie gewünscht.

Ich muss ein Java Objekt an einen View übergeben, deshalb ist der Zugriff notwendig.

Viele Grüße
erazor
 
Du kannst keine Java Objekte an den Launcher übergeben, wie sollte das funktionieren? Ist doch ein eigener Prozess...
Mach es doch zB über Sockets.
 
Du kannst keine Java Objekte an den Launcher übergeben, wie sollte das funktionieren? Ist doch ein eigener Prozess...
Mach es doch zB über Sockets.

wie das funktionieren soll, war mir eben nicht klar, daher die Frage 😉
Sockets hab ich mir auch schon überlegt, allerdings hatte ich eben die Hoffnung, dass es einen "einfacheren" Weg gibt...

Es geht im Prinzip nur darum ein Java Objekt, das die Daten enthält, an den View zu übergeben.

Ich werde es nun mal mir Sockets probieren.

Viele Grüße
erazor
 
Wenns nur um Daten geht, würd ich sie in eine Datei speichern (respektive Datenbank) und sie dann im anderen Programm einfach laden.
 
Hallo zusammen,

eine Datei habe ich als erstes überlegt, allerdings wäre das recht kompliziert, wenn die Verbindung mal bidirektional werden soll. Genau der Fall ist nun eingetreten und ich habe mich dazu entschlossen RMI zu verwenden.

Ich habe jeweils ein Interface für die Services erstellt und diese in ein gemeinsames Jar gepackt, da sie von verschiedenen Projekten verwendet werden.
Nun kann ich einfach die entfernten Methoden aufrufen.

Danke für eure Tipps 🙂

Grüße
erazor
 
Das ist zwar komplizierter als ein Objekt per ObjectOutputStream über ein Socket zu schicken, aber hauptsache es funktioniert...
 

Zurück
Oben