# Probleme mit Buckminster unter eclipse 3.4



## eclipseBeginner (3. Dez 2009)

Hallo,

ich wollte mich mal am Bauen von RCP Anwendungen mit Buckminster versuchen. Doch ich habe 2 Probleme und komme einfach nicht weiter.

ich verwende eclipse 3.4.2.  und habe mir über die Ganymede Update-site das dort verfügbare buchminster Core(1.1.0-r099448) CVS-Support(1.0.0.r09930) und PDE Support (1.1.340.r09942) runtergeladen.

Ich wollte es anhand des Tutorials von Wildcard bzw. dem Tutorial von Ralf Ebert versucuhen. Doch bei beiden Tutorials stoße ich an die gleichen grenzen.

1. Jedesmal wenn ich mein Feature welches das mail-template und die produkt-konfiguration enthält speichern will, kommt folgender Fehler in der Konsole: "Project refresh on com.example.mail.feature failed: Attribute feature.exports is defined more then once in component com.example.mail.feature"

2. Ich habe keine Buckminster Action site.p2 in dem Auswahlmenü. Ich vermute das liegt daran dass ich eclipse 3.4.2 und nicht eclipse 3.5 verwende. Denn als ich es dort probiert habe, hatte ich diese action. Nur kann ich leider nicht umsteigen.
 Somit kann ich die create.product bzw. create.product.zip auch nicht ausführen, da diese auf die Action verweisen.

Kann ich mir die Action nachinstallieren bzw. selber in eine spec in mein Feature definieren oder gibt es für die versin 3.4.2 ein Update in der dies enthalten ist. Oder funktioniert das bauen und exportieren einer rcp als Product unter 3.4.2 noch ganz anders als in den beiden tutorials beschrieben?

Ich möchte es später dazu verwenden um über den hudson das bauen und exportieren der RCP Anwendung zu automatisieren. Gibt es dafür noch einen anderen Weg für eclipse 3.4?


----------



## Wildcard (5. Dez 2009)

Warum muss es 3.4 sein? Das Problem ist an der Stelle das zwischen 3.3 und 3.5 riesige änderungen an PDE, PDE Build und der ganzen Infrastruktur wegen p2 vorgenommen wurden.
Der PDE Teil von Buckminster 3.4 basiert daher noch auf dem alten Update Manager von Eclipse (der mittlerweile komplett durch p2 ersetzt wurde).
Seit 3.5 verwendet Buckminster die neuen p2 APIs für die PDE unterstützung.
Also nein, die Tutorials sind nicht auf ältere Versionen übertragbar. 
Siehst du einen bestimmten Grund warum du nicht auf ein aktuelles Release umsteigen kannst?


----------



## eclipseBeginner (5. Dez 2009)

Hallo,

ja das habe ich mir gedacht.

Das RCP was wir in unserer Firma entwickeln besteht aus einer Vielzahl von Plugins, für welche beim Update auf 3.5 einige Änderungen notwendig wären.
Auf Grund von derzeitigen Zeitproblemen, wird dies wohl noch eine ganze Weile auf sich warten lassen.

Gibt es mit eclipse 3.4 also keine Möglichkeit ein RCP Produkt mit Buckminster und Hudson automatisch Headless bauen zu lassen?
Und wenn nicht wie habt ihr das früher gemacht? Mit welchen Tools, kann ich unter eclipse 3.4 bauen und deployen?


----------



## Wildcard (5. Dez 2009)

Es ist egal ob ihr Eclipse 3.4 Features/RCPs baut, dafür kann man Buckminster 3.5 nehmen. Buckminster ist nur das Build Tool (wie Ant, javac, oder Maven). Verwende einfach eine 3.4er Target Platform und baue mit Buckminster 3.5


----------



## eclipseBeginner (5. Dez 2009)

Hallo,

das ist ja Klasse und wie macht man das?

In den Tutorials steht ja immer nur beschrieben, wie es mit eclipse3.5 und Buckminster für 3.5 funktioniert. 
Kann ich mir dann auch Buckminster für 3.5 runterladen und verwenden? Oder Gibts da ne andere Vorgehensweise?


----------



## Wildcard (5. Dez 2009)

In den Tutorials werden 3.5 Produkte gebaut, aber das ist unerheblich. Die Produkte sind nur deshalt 3.5 weil die Target Platform aus 3.5 Artifkaten besteht. Wenn du ein 3.4 runterlädst, oder auf 3.4 Update Sites zeigst, dann baust du ein 3.4 Eclipse. Buckminster ist das egal, du bestimmst wo das Build Material herkommt.


----------



## eclipseBeginner (5. Dez 2009)

Ja ok, das verstehe ich. Kann man irgendwo nachlesen wie es funktioniert?

Also welche Schritte durchgeführt werden müssen, wie die Skripte dafür aussehen oder ähnliches?


----------



## Wildcard (6. Dez 2009)

Einfachste Variante (für den Headless Build) 
	
	
	
	





```
setpref targetPlatformPath=/path/to/eclipse3.4
```
 ausführen


----------



## eclipseBeginner (6. Dez 2009)

Hallo,

ok, mir geht es mehr um das ganze drumherum. Da ja meißtens beschrieben ist, wie man es aus eclipse heraus macht und dort auch immer mit p2.site beschrieben.

Da du ja gesagt hast das der p2 Mechanismus in 3.4 nicht funktioniert.
Gibt es ein skript um die Aktion product.build zu buckminster hinzuzufügen um automatisch ein produkt zu bauen und als zip zu exportieren?


----------



## Wildcard (6. Dez 2009)

p2 funktioniert schon mit Eclipse 3.4 aber in Buckminster wird es erst seit 3.5 unterstützt. Die Tutorials sind also 1 zu 1 auf deinen Fall übertragbar, nur ist bei dir die Target Platform eine andere (3.4). Der rest funktioniert genauso.


----------



## eclipseBeginner (6. Dez 2009)

Das ist ja klasse. Wenn ich dich also richtig verstehe kann ich mir buckminster für eclipse 3.5 runterladen und dann anhand der tutorials mir mein produkt exportieren.


----------



## Wildcard (6. Dez 2009)

Genau. Im Tutorial wird die Target Platform anhand einer MSPEC materialisiert die benötigte Features aus der Eclipse 3.5 lädt. Die dort verwendete RMAP musst du entsprechend anpassen das sie auf eine 3.4 Update Site zeigt, der Rest funktioniert genauso.


----------

