Bei Maven scheine ich eine grundlegende Sache noch nicht zu verstehen. Aktuell schreibe ich in meine POMs immer genau rein mit welcher Version die Artefakte gebaut werden sollen:
[XML]
<groupId>com.firma.package</groupId>
<artifactId>Program</artifactId>
<version>2.0.0</version>
<packaging>jar</packaging>
<name>Program</name>
[/XML]
Mit dem Plugin buildnumber-maven-plugin lese ich aus SVN die aktuelle Revisionsnummer aus mit der dies Artefakt gebaut wurde und schreibe dies in die Manifestdatei um eine genaue Traceability herzustellen zwischen dem Artefakt und dem Stand des dazugehörigen Source Codes.
Zusätzlich würde ich gerne den dritten Teil der Versionsnummer (der inkrementelle Teil) mit der SVN Revisionsnummer versehen. Damit möchte ich folgendes erreichen:
1. Einmal um die Traceability zu vereinfachen,
2. aber auch um sicherzugehen, dass neuere Versionen der Artefakte wirklich in Artifactory deployed werden und das andere Maven oder Ant/Ivy Jobs wirklich die aktuellste Version nutzen.
Folgendes für das benennen der JAR Datei funktioniert:
[XML]
<build>
<finalName>Program-2.0-r${buildNumber}</finalName>
</build>
[/XML]
Aber in der POM Projectbeschreibung nicht. Hier wird die Propertie ${buildNumber} nicht aufgelöst.
[XML]
<groupId>com.firma.package</groupId>
<artifactId>Program</artifactId>
<version>2.0.${buildNumber}</version>
<packaging>jar</packaging>
<name>Program</name>
[/XML]
Den Punkt 2 könnte ich vielleicht mit dem verwenden von
[XML]
<version>2.0.0-SNAPSHOT </version>
[/XML] sicherstellen, würde ich aber gerne Vermeiden.
Weiß jemand ob meine Vorstellung umsetzbar ist und überhaupt mit den Maven Konzepten zusammenpasst?
[XML]
<groupId>com.firma.package</groupId>
<artifactId>Program</artifactId>
<version>2.0.0</version>
<packaging>jar</packaging>
<name>Program</name>
[/XML]
Mit dem Plugin buildnumber-maven-plugin lese ich aus SVN die aktuelle Revisionsnummer aus mit der dies Artefakt gebaut wurde und schreibe dies in die Manifestdatei um eine genaue Traceability herzustellen zwischen dem Artefakt und dem Stand des dazugehörigen Source Codes.
Zusätzlich würde ich gerne den dritten Teil der Versionsnummer (der inkrementelle Teil) mit der SVN Revisionsnummer versehen. Damit möchte ich folgendes erreichen:
1. Einmal um die Traceability zu vereinfachen,
2. aber auch um sicherzugehen, dass neuere Versionen der Artefakte wirklich in Artifactory deployed werden und das andere Maven oder Ant/Ivy Jobs wirklich die aktuellste Version nutzen.
Folgendes für das benennen der JAR Datei funktioniert:
[XML]
<build>
<finalName>Program-2.0-r${buildNumber}</finalName>
</build>
[/XML]
Aber in der POM Projectbeschreibung nicht. Hier wird die Propertie ${buildNumber} nicht aufgelöst.
[XML]
<groupId>com.firma.package</groupId>
<artifactId>Program</artifactId>
<version>2.0.${buildNumber}</version>
<packaging>jar</packaging>
<name>Program</name>
[/XML]
Den Punkt 2 könnte ich vielleicht mit dem verwenden von
[XML]
<version>2.0.0-SNAPSHOT </version>
[/XML] sicherstellen, würde ich aber gerne Vermeiden.
Weiß jemand ob meine Vorstellung umsetzbar ist und überhaupt mit den Maven Konzepten zusammenpasst?