Donnerstag, 24. Mai 2012


Artikel

Juli 2010 | Artikel

Buckminster, b3 und p2

(Link zum Artikel: http://www.entwickler-magazin.de/jaxenter//003216)

Build und Provisioning in Eclipse Helios

  • Teilen
  • kommentieren
  • empfehlen
  • Bookmark and Share
Auch im Build-Bereich hat Eclipse verschiedene Lösungen am Start. In Helios ist neben dem klassischen PDE-Build auch das Projekt Buckminster mit interessanten Neuerungen vertreten. Eine neue generische Build-Lösung entsteht zurzeit mit dem b3-Projekt, bei dem ein EMF-Modell zum Aufsetzen des Build-Prozesses zum Einsatz kommt. Buckminster-Projektleiter Thomas Hallgren und Henrik Lindberg berichten über die Fortschritte bei Build und Provisioning in Eclipse Helios.
Teil 1   Teil 2   

JAXenter: Können Sie das Buckminster-Projekt in einigen Worten beschreiben?

Thomas Hallgren: Buckminster ist ein Werkzeug zum Assemblieren, Builden und Veröffentlichen von Anwendungen. Es nutzt vorhandene Eclipse-Technologien wie die Eclipse Resource Platform, Project Builder, Team Provider, das p2-Provisionierungsframework und den PDE Build.

Im Gegensatz zu den meisten anderen Build-Tools baut Buckminster den Workspace, d. h. es führt den genau gleichen Build in einer Headless-CI-Umgebung durch wie in der Eclipse IDE. Das bedeutet, dass die Features und Bundles, die in der IDE gebaut werden, von Buckminster ohne zusätzliche Konfiguration headless gebaut werden können. Ein weiterer Vorteil ist, dass der Build auf Warnmeldungen und Fehler reagieren kann, die vom Manifest Compiler, Schema Compiler und anderen Standard-Eclipse-Buildern verursacht werden.

JAXenter: Welche Verbesserungen hat Buckminster im Helios-Release zu bieten?

Hallgren: Die wichtigsten Ergänzungen sind Git-Support, unsere neue vollständige Dokumentation sowie die Unterstützung für die Headless-Ausführung von JUnit und EclEmma Code Coverage. Eine Liste der neuen Features findet sich auch in Henrik Lindbergs Blog.

Auch wenn es streng genommen nicht zum Buckminster-Projekt gehört, denke ich, dass auch Johannes Utzig’s Buckminster Plug-in für Husdon CI eine Erwähnung wert ist. Das Plug-in hat viele Verbesserungen erfahren und stellt nun eine sehr nützliche Ergänzung für Hudson dar.

JAXenter: Was ist der Unterschied zwischen Buckminster und anderen Build-Lösungen bei Eclipse, insbesondere das b3-Projekt?

Henrik Lindberg: Eclipse b3 ist als Nachfolger sowohl von Buckminster und den PDE Build gedacht (und potenziell auch für andere Build-Technologien). Es umfasst eine Menge von Konzepten, die von diesen Technologien abgedeckt werden und vereint diese in einem einzigen Modell. Das Modell wird durch eine sehr mächtige DSL auf Basis von Xtext bereitgestellt.

Buckminster ist ein reifes und bewährtes Build-System, das seit 2006 im Einsatz ist. Eclipse b3 ist hingegen noch in der Anfangsphase der Entwicklung. Zurzeit verfügt b3 noch nicht über eine eigene Engine für die Build. Unser Plan ist es, Buckminster als Build Engine für das erste Release von b3 zu nutzen.

Was wir hauptsächlich betonen möchten, ist, dass der Build-Prozess von Buckminster genau so funktioniert wie der in der Eclipse IDE. Was Buckminster leistet, ist das Auffinden und die Materialisierung von Komponenten sowie die Orchestrierung verschiedener Aktionen. Weder Buckminster noch b3 stellen einen Ersatz für PDE selbst dar – lediglich für den veralteten und unpopulären Headless PDE Build. Wir denken, dass dies wichtig ist, da es immer noch die "ursprüngliche Logik" ist, die für das Zusammenfügen der Einzelteile sorgt.

Teil 1   Teil 2   

andere Artikel dieser Serie

Kommentare