Wenn eine Startkonfiguration ihr Programm startet, ist sie verantwortlich für den Aufruf des ausführbaren Programms in dem geforderten Modus. Die Implementierung für einen Start hängt von den spezifischen Gegebenheiten einer jeden Startkonfiguration ab, aber die meisten Plug-ins werden eine Befehlszeile erstellen und eine Laufzeit-Exec aufrufen, um das Programm zu starten. Die Klasse DebugPlugin implementiert eine bequeme Methode für den Aufruf einer Laufzeit-Exec und die Verarbeitung möglicher Erweiterungen. Clients können die Befehlszeile und das Arbeitsverzeichnis für die Exec angeben.
Process p = DebugPlugin.exec(cmdLine, workingDirectory);
Wenn java.lang.Process für das ausführende Programm erstellt worden ist, muss es durch das Debug-Plug-in verwaltet werden. Für Startprogramme muss der Prozess der ILaunch zugeordnet werden, die das gestartete Programm darstellt. Das Debug-Plug-in definiert einen Wrapper für einen Systemprozess, IProcess, der es Clients ermöglicht, auf die zugeordnete ILaunch zuzugreifen und ihre eigenen Namensattribute dem Prozess zuzuordnen. Zusätzlich definiert IProcess ein Etikett für den Prozess und ordnet einen IStreamsProxy dem Prozess zu, der Clients Zugriff auf die Eingabe-, Ausgabe- und Fehlerstreams des Systemprozesses gewährt. Dieser Prozesswrapper kann auch mit Hilfe einer Dienstprogrammmethode in DebugPlugin erzeugt werden.
IProcess process= DebugPlugin.newProcess(launch, p, "My Process);
Eine Zuordnung benannter Attribute kann ebenfalls geliefert werden.
Viele Plug-ins können sich einfach auf die Dienstprogrammmethoden in DebugPlugin für den Start des Systemprozesses verlassen und wandeln es in einen IProcess um. Bei den Plug-ins, die mehr Kontrolle bei der Erstellung des Wrapper benöptigen, kann eine Prozessfactory einer Startkonfiguration zugeordnet werden. Die Prozessfactory dient zur Erstellung eines create an IProcess, der die besonderen Erfordernisse des Plug-ins erfüllt. Auf die Prozessfactory wird durch ID verwiesen und sie sollte im Attribut DebugPlugin.ATTR_PROCESS_FACTORY_ID der Startkonfiguration gespeichert werden.
Die Zuordnung zwischen der Prozessfactory-ID und der Klasse, die sie implementiert, erfolgt mit Hilfe des Erweiterungspunkts org.eclipse.debug.core.processFactories.
Das folgende Beispiel zeigt, wie ein Ant-Plug-in eine Prozessfactory für ihre Starts erstellt:
<extension point="org.eclipse.debug.core.processFactories"> <processFactory class="org.eclipse.ant.internal.ui.launchConfigurations.RemoteAntProcessFactory" id="org.eclipse.ant.ui.remoteAntProcessFactory"> </processFactory> </extension>
Es liegt in der Verantwortung des registrierenden Plug-ins, die Prozessfactory-ID im entsprechenden Attribut der Startkonfiguration zu speichern.