Buckminster: Plugin Version in Java source File einfügen

blacksoldier

Mitglied
Hallo,
bisher benutze ich für meine eclipse product PDE als build System. Diesen stell ich grade auf buckminster um. Funktioniert auch wunderbar.

Jetzt möchte ich noch das die Plugin Version in den source code der Klasse Version eingefügt wird bevor der source kompiliert wird.
Bisher habe ich das über die customBuilcCallbacks gelöst.

Für buckminster habe ich auch schon eine buckminster.cspex im Plugin angelegt.
Habe mich hier an den Foreneintrag über die about.mappings gehalten.

Mein erstes Problem ist hierbei wie komme ich an die Aktuelle Plugin Version inkl. qualifier ran?
Das zweite Problem ist das ich nicht genau weiss wann und wie ich meine action insert.version
aufrufen muss.
Zum Testen hab ichs in die Gruppe eclipse.build.source aufgenommen. Der Token @runtime_version@ wird auch erfolgreich ersetzt nur liegt dieser nur im buckminster temp folder drin jedoch nicht im gebauten jar file.

buckminster.cspex
[XML]
<?xml version="1.0" encoding="UTF-8"?>
<cspecExtension
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0"
xmlns="http://www.eclipse.org/buckminster/CSpec-1.0">

<artifacts>
<private name="raw.version.source">
<path path="src/runtime/util/Version.java"/>
</private>
</artifacts>

<actions>
<private name="insert.version" actor="ant">
<actorProperties>
<property key="buildFileId" value="buckminster.pdetasks"/>
<property key="targets" value="replaceToken"/>
</actorProperties>
<properties>
<property key="token" value="@runtime_version@"/>
<property key="value" value="TODO"/>
</properties>
<prerequisites>
<attribute alias="action.input" name="raw.version.source"/>
</prerequisites>
<products alias="action.output" base="${buckminster.output}/temp/">
<path path="src/runtime/util/Version.java" />
</products>
</private>
</actions>

<groups>
<private name="eclipse.build.source">
<attribute name="eclipse.build.source.old"/>
<attribute name="insert.version"/>
</private>
</groups>

<alterArtifacts>
<rename oldName="eclipse.build.source" newName="eclipse.build.source.old"/>
</alterArtifacts>

</cspecExtension>
[/XML]

Leider kann ich das nicht übder die eclipse/osgi api machen da diese klassen unabhängig von der eclipse platform sein müssen da diese nachher außerhalb von eclipse auf bluray(settop boxen laufen müssen.

Hoffe ihr könnt mir hierbei Helfen.
 
Zuletzt bearbeitet:

Wildcard

Top Contributor
Möchtest du das es im generierten Source Bundle ersetzt wird, oder tatsächlich im Kompilat? Wenn letzteres ist eclipse.build.source die falsche Gruppe, da damit AFAIK die Source Bundles gebaut werden.
An den Build Qualifier müsstest du mit ${qualifier.replacement} kommen.
Hast du die Frage in der Buckminster Newsgroup gestellt? Dort kann man dir sicher weiterhelfen.
 

blacksoldier

Mitglied
Das soll nachher ins kompilierte jar rein.

Leider klappt das mit dem ${qualifier.replacement} nicht.
Es erscheint nun direct das "${qualifier.replacement}" im source file.
Im eclipse bugzilla hab ich dort diesen eintrag gefunden https://bugs.eclipse.org/bugs/show_bug.cgi?id=321753.

An welcher stelle muss ich den meine action aufrufen. Beim "eclipse.build" ?

Hier ist der Eintrag in den eclipse Foren:
Eclipse Community Forums
 
Zuletzt bearbeitet:

blacksoldier

Mitglied
Habs jetzt wie folge gelöst:
Habs über nen eigenen ant task gelöst:

buckminster.cspex
[XML]
<?xml version="1.0" encoding="UTF-8"?>
<cspecExtension
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:bc="http://www.eclipse.org/buckminster/Common-1.0"
xmlns="http://www.eclipse.org/buckminster/CSpec-1.0">

<artifacts>
<private name="raw.version.source" base="src/runtime">
<path path="Version.java"/>
</private>
</artifacts>

<actions>
<private name="insert.version" actor="ant">
<actorProperties>
<property key="buildFile" value="tools.ant"/>
<property key="targets" value="replaceVersion"/>
</actorProperties>
<prerequisites>
<attribute name="manifest" alias="manifest"/>
<attribute alias="action.input" name="raw.version.source"/>
</prerequisites>
</private>
</actions>

<alterActions>
<public name="eclipse.build" actor="eclipse.build">
<alterPrerequisites>
<attribute name="insert.version" />
</alterPrerequisites>
</public>
</alterActions>

</cspecExtension>
[/XML]

tools.ant:
[XML]
<project>

<import file="${buckminster.pdetasks}"/>

<property name="version.token" value="@runtime_version@"/>

<target name="replaceVersion">
<extractBundleVersion file="${sp:manifest}" property="bundle.version"/>
<replace token="${version.token}" value="${bundle.version}" file="${sp:action.input}"/>
</target>

</project>
[/XML]
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
C Buckminster + plugin tests Tools - Maven, Gradle, Ant & mehr 3
A Buckminster hilfe Tools - Maven, Gradle, Ant & mehr 18
A Hudson/Buckminster: Verschiedene Fragen Tools - Maven, Gradle, Ant & mehr 12
A Hudson-Buckminster wirft Exception nach SVN Checkout Tools - Maven, Gradle, Ant & mehr 3
C Buckminster: Versionen einzelner Jars aus der Targetplatform Tools - Maven, Gradle, Ant & mehr 5
C Buckminster: Cannot satisfy dependency: Tools - Maven, Gradle, Ant & mehr 4
H RCP Build mit Buckminster (headless) - unresolved node Tools - Maven, Gradle, Ant & mehr 7
tfa frisch installierter Buckminster kann nichts? Tools - Maven, Gradle, Ant & mehr 3
O Webstart Mit Buckminster JNLP erzeugen Tools - Maven, Gradle, Ant & mehr 5
O Buckminster: Circular dependency detected Tools - Maven, Gradle, Ant & mehr 2
F Eigene Ant-Tasks in Buckminster Tools - Maven, Gradle, Ant & mehr 5
@ [Buckminster] Missing requirement Tools - Maven, Gradle, Ant & mehr 2
T Buckminster Build JRE mitliefern Tools - Maven, Gradle, Ant & mehr 2
T Buckminster + SVN support Tools - Maven, Gradle, Ant & mehr 5
E Probleme mit Buckminster unter eclipse 3.4 Tools - Maven, Gradle, Ant & mehr 11
T Buckminster-Hudson RCP-Build "CSpec source required" Tools - Maven, Gradle, Ant & mehr 9
H Maven build.plugins.plugin.version fehlt Tools - Maven, Gradle, Ant & mehr 0
F Maven JAR Plugin Probleme Tools - Maven, Gradle, Ant & mehr 4
von Spotz Gradle: Warum wird das Plugin nicht geladen? Tools - Maven, Gradle, Ant & mehr 4
J Gradle signing Plugin Tools - Maven, Gradle, Ant & mehr 0
H Maven maven-source-plugin is missing Tools - Maven, Gradle, Ant & mehr 5
H Jenkins aktulles Checkstyle Plugin Tools - Maven, Gradle, Ant & mehr 2
LimDul Maven Maven Surefire Plugin - Warnings upgrade Tools - Maven, Gradle, Ant & mehr 2
H Jenkins - maven-jar-plugin - kein jar-file Tools - Maven, Gradle, Ant & mehr 38
H Maven Anfängerproblem - No plugin found for prefix 'archetype' in the current project and in the plugin groups Tools - Maven, Gradle, Ant & mehr 25
C while Schleife in Plugin stoppt nicht Tools - Maven, Gradle, Ant & mehr 23
D [ERLEDIGT] Probleme mit Authorization in Nexus und mvn deploy plugin Tools - Maven, Gradle, Ant & mehr 1
D [Maven Pluginentwicklung] - Plugin das nur auf Parent pom läuft Tools - Maven, Gradle, Ant & mehr 0
S Maven buildnumber-maven-plugin / Formatproblem mit timestamp Tools - Maven, Gradle, Ant & mehr 17
D [Maven] neuerdings "No plugin found for prefix ..." errors Tools - Maven, Gradle, Ant & mehr 7
HaukeG Maven Suche nach Ideen für Realisierung eines eigenen Plugin Tools - Maven, Gradle, Ant & mehr 3
H Maven Tycho [ERROR] Failed to execute goal org.eclipse.tycho:tycho-packaging-plugin:0.14.1:validate-vers Tools - Maven, Gradle, Ant & mehr 8
L Maven Unable to download maven-copy-plugin Tools - Maven, Gradle, Ant & mehr 10
Chris81T Maven Hilfe bei EAR packaging mit maven-ear-plugin Tools - Maven, Gradle, Ant & mehr 1
maestr0 Maven Plugin Entwicklungs Buch für Einsteiger Tools - Maven, Gradle, Ant & mehr 8
D [maven] problem mit konfiguration von cargo plugin Tools - Maven, Gradle, Ant & mehr 4
D [Maven] problem mit plugin - es fehlen "dubug informationen" Tools - Maven, Gradle, Ant & mehr 8
S Maven pom.xml, Error: Plugin execution not covered by lifecycle configuration Tools - Maven, Gradle, Ant & mehr 3
E Maven maven-jaxb2-plugin proxy Tools - Maven, Gradle, Ant & mehr 4
K MAVEN Plugin erzeugen Tools - Maven, Gradle, Ant & mehr 7
B Maven Shared plugin konfiguration ? Tools - Maven, Gradle, Ant & mehr 3
D gwt-maven-plugin und Eclipse Tools - Maven, Gradle, Ant & mehr 1
B Maven build-helper-maven-plugin mit Eclipse Tools - Maven, Gradle, Ant & mehr 3
D Maven Install Plugin: Einzelne Datei installen ? Tools - Maven, Gradle, Ant & mehr 16
M eigenes Plugin erstellen Maven Tools - Maven, Gradle, Ant & mehr 4
S Maven Profiles - maven-exec-plugin Tools - Maven, Gradle, Ant & mehr 4
S Maven Webstart Plugin Tools - Maven, Gradle, Ant & mehr 7
P Maven Release Plugin - überschreiben der POM verhindern? Tools - Maven, Gradle, Ant & mehr 5
T Failed to configure plugin parameters Tools - Maven, Gradle, Ant & mehr 8
J Maven Assembly-Plugin und Dependencies Tools - Maven, Gradle, Ant & mehr 4
U Maven2 WAR Plugin doppelte Dependencies Tools - Maven, Gradle, Ant & mehr 4
M maven-jaxb-plugin Tools - Maven, Gradle, Ant & mehr 1
Z Java-Plugin-Einstellung bei Internet-Explorer Tools - Maven, Gradle, Ant & mehr 1
G Applet braucht eine bestimmte Plugin-Version Tools - Maven, Gradle, Ant & mehr 11
C Java Plugin ??? Tools - Maven, Gradle, Ant & mehr 4
K IE + Sun PlugIn + JAR + Zugriff per file:/ geht nicht mehr Tools - Maven, Gradle, Ant & mehr 2
parax Fatal error compiling: error: release version 17 not supported Tools - Maven, Gradle, Ant & mehr 26
P Maven Wie die Maven Project version in JSP page verwenden? Tools - Maven, Gradle, Ant & mehr 2
D Maven Abhängigkeiten überprüfen auf Kompatibilität mit einer anderen Java-Version Tools - Maven, Gradle, Ant & mehr 11
Neumi5694 Ant - javac Version Tools - Maven, Gradle, Ant & mehr 4
S New version released: Java Switcher for 1.8.0_112 and Windows x64 only Tools - Maven, Gradle, Ant & mehr 4
D "Implementation-Version" aus Manifest auslesen Tools - Maven, Gradle, Ant & mehr 6
schlingel Applet Java-Sicherheitswarnung wegen alter JRE-Version Tools - Maven, Gradle, Ant & mehr 13
H WebStart-Probleme mit JRE Version 1.6.0_18 Tools - Maven, Gradle, Ant & mehr 1
algorismi Webstart: neue Version der Anwendung Tools - Maven, Gradle, Ant & mehr 4
U Java Webstartproblem ab Version 1.6_11 Tools - Maven, Gradle, Ant & mehr 7
T Jar erstellen mit Build Version? Tools - Maven, Gradle, Ant & mehr 2
N Java Runtime -> Version erzwingen Tools - Maven, Gradle, Ant & mehr 17
U Java Version Tools - Maven, Gradle, Ant & mehr 4
G datei von server lesen - falsche version Tools - Maven, Gradle, Ant & mehr 2

Ähnliche Java Themen

Neue Themen


Oben