# RCP Anwendung Workspace wechseln



## gello (8. September 2006)

Hallo,

ich schreibe gerade an einer Eclipse RCP Anwendung. Bisher funktioniert alles wunderbar,
aber nun möchte ich noch eine Funktion implementieren, mit der es möglich sein soll, einen neuen Workspace anzugeben und zu wechseln (so wie bei der Eclipse-IDE mit
'Switch Workspace').
Ich weiß, dass ich mit 
	
	
	



```
ResourcesPlugin.getWorkspace();
```
 den aktuellen Workspace bekomme, hab aber noch keine Möglichkeit gefunden, den Workspace auf einen neuen Wert zu setzen.

Falls jemand einen Lösungsvorschlag hat, immer nur her damit


----------



## Thomas Darimont (8. September 2006)

Hallo!

Schau doch mal was in org.eclipse.ui.internal.ide.actions.OpenWorkspaceAction passiert ;-)

Gruß Tom


----------



## gello (8. September 2006)

Danke für den Tipp.
Krieg nun den Dialog zum Wechseln des Workspace. Die Anwendung startet anschließen auch wieder neu, aber leider mit der alten Workspace (nicht die, die im Dialog angegeben wurde).

Ich ruf den Dialog folgendermaßen auf:

```
new OpenWorkspaceAction(window).run();
```

Muss ich noch was in den Konfigs ändern oder warum gehts nicht?

Danke für eure Hilfe


----------



## gello (21. September 2006)

Hallo,

ich hab mir die Funktionen in der Klasse OpenWorkspaceAction mal etwas genauer angeschaut und dabei festgestellt, dass Eclipse beim Wechseln des Workspace die Kommandozeilenparameter aktualisiert.
Nur liefert die Abfrage nach den VM Argumenten bei meiner RCP-Anwendung immer null zurück und somit wird auch kein Parameter aktulisiert.

Anschließend hab ichs mal versucht, die Funktion selbst zu Programmieren. Dabei habe ich die Variante von Eclipse mal probiert und die Abfrage der VM Argumente auskommentiert. Dabei hat meine Anwendung die Parameter (workspace) richtig aktualisiert und mit System.setProperty("eclipse.exitdata",newProperties) dem System bekannt gemacht. Beim anschließenden Neustart der Anwendung war aber wieder der alte Workspace vorhanden.

Bei einem zweiten Versuch, die Funktion selbst zu Programmieren, hab ich versucht, den Pfad für den neuen Workspace in die "launcher.ini" zu schreiben, wobei "launcher" der Name meiner .exe-Datei ist. Er die Datei ordnungsgemäß und im richtigen Verzeichnis erstellt, aber beim Anschließenden Neustart war auch wieder der alte Workspace vorhanden. Erst wenn ich die Anwendung manuell schließe und wieder starte, lest er den neuen Workspace aus, und verwendet diesen auch.

Falls jemand von euch schon etwas Erfahrung mit diesem Thema hat, wär ich für jede Hilfe sehr dankbar.


----------

