Produkte und Komponenten

Ein Eclipse-basiertes Produkt ist ein mit der Eclipse-Plattform erstelltes Standalone-Programm. Es besteht die Möglichkeit, ein Produkt als eine oder mehrere Komponenten zu verpacken und auszuliefern. Diese Komponenten sind schlichtweg Gruppierungen von Plug-ins, die von den Eclipse-Aktualisierungsmechanismen als eine einzige Einheit verwaltet werden.

Produkte enthalten sämtliche für ihre Ausführung benötigten Codes und Plug-ins.  Hierzu gehören die Java-Laufzeitumgebung (JRE) und der Eclipse-Plattformcode.  Plug-in-Code, JRE und die Eclipse-Plattform werden typischerweise über ein produktspezifisches Installationsprogramm installiert.  Produktanbieter haben die freie Wahl über das verwendete Installationstool oder -programm. 

Nachdem das Programm installiert wurde, wird es durch den Benutzer gestartet und mit einer Eclipse-Workbench dargestellt, die speziell für den vom Produkt unterstützten Verwendungszweck konfiguriert wurde, beispielsweise Webentwicklung, Programmentwicklung in C++ oder anderes.  Die Plattform macht die Konfiguration von Bezeichnungen, Informationsdialogen, Grafiken und Eingangsanzeigen denkbar einfach, damit für den Benutzer nicht der Eindruck einer Plattformworkbench entsteht, sondern die Workbench vielmehr als das Hauptfenster des eigentlichen Produkts erscheint.

Die Verzeichnisstruktur der höchsten Ebene eines solchen Produkts sieht in etwa wie diejenige für das fiktive Produkt namens "AcmeWeb" aus, das auf einer Windows-Plattform installiert wurde:

acmeweb/
	acmeweb.exe		(product executable)
	eclipse/		(Verzeichnis für installierte Eclipse-Dateien)
		.eclipseproduct	(Markierungsdatei)
		eclipse.exe	
		startup.jar		
		configuration/	
			config.ini
		jre/
		features/	(installierte Komponenten, falls vorhanden)
			com.example.acme.acmefeature_1.0.0/
				feature.xml
			...
		plugins/
			com.example.acme.acmefeature_1.0.0/
				plugin.xml
				about.ini
				about.html
				about.mappings
				about.properties
				acme.png
				splash.jpg
			com.example.acme.acmewebsupport_1.0.0/
			...
		links/
			...

Genaugenommen gibt es zwei Arten, ein Produkt in Eclipse zu definieren. Der bevorzugte Mechanismus ist die Verwendung von Produkterweiterungspunkten (neu in Eclipse 3.0 eingeführt). Über einen solchen Erweiterungspunkt können Sie Ihr Produkt definieren und das Branding (Eingangsanzeigen, Fenstersymbole, etc.) anpassen. Der ältere (in Eclipse 2.1 eingesetzte) Mechanismus verwendet Komponenten und geht vor allem von der Existenz einer Hauptkomponente aus. Im Hintergrund verwendet Eclipse 3.0 den Mechanismus des Produkterweiterungspunktes, bietet aber Kompatibilitätsfunktionen an, die, falls nötig, veraltete Definitionen in das neue Modell integrieren.

Im Folgenden werden beide Mechanismen betrachtet, ebenso wie die Art und Weise, wie sie zur Anpassung eines Produkts eingesetzt werden. Auch bei Verwendung des Produkterweiterungspunktmechanismus können Komponenten noch zur Gruppierung der Funktionalität, die von der Aktualisierungsverwaltungsfunktion geliefert wird, verwendet werden. In den nächsten Abschnitten wird davon ausgegangen, dass in den Plug-ins neben Produktdefinitionen auch Komponentengruppierungen vorhanden sind.