mvn release: führt automatisch scm-Tag angeben, die Release-Version enthält
-
20-09-2019 - |
Frage
würde ich meine Maven-Release Setup wie im Batch-Modus laufen zu lassen, aber ich bin kein Fan von dem Standard-scm-Tag ${artifactId}-${releaseVersion}
. Stattdessen würde ich einfach mag es zu markieren, mit ${releaseVersion}
; aber ich bin nicht klar, ob eine solche Eigenschaft vorhanden ist (dh. ohne -snapshot Suffix).
Ich möchte die Konfiguration unter den Code zu ähneln. Ist eine solche Standard möglich Tagging mit dem Maven-Release-Plugin?
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.0</version>
<configuration>
<tag>${releaseVersion}</tag>
</configuration>
</plugin>
Lösung
versuchen, diese:
<configuration>
<tag>${project.version}</tag>
</configuration>
Andere Tipps
Ich habe gerade dies funktioniert, wenn Hudson mit meiner Entlassung zu tun. Ich stellte fest, dass Hudson (mit Maven Veröffentlichung Plugin) wird das Kommando mit einer Eigenschaft wie -Dproject.rel.com.example Einleitung: my-Artefakt-id = 1.0.1. Unter Verwendung der folgenden Plugin-Konfiguration:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<configuration>
<tag>REL-${project.rel.com.example:my-artifact-id}</tag>
</configuration>
</plugin>
Führte im Tag sein REL-1.0.1
Ich bin neu in der Release-Plugin, aber ich würde davon ausgehen, etwas Ähnliches würde von der Kommandozeile arbeiten.
Sie können in den Eigenschaften übergeben:
releaseVersion - welche Version Sie wollen es so freigegeben werden (1,0) developmentVersion - Die nächste Version (2.0-SNAPSHOT) tag - Der Name des Tags
ein 1.0-SNAPSHOT impliziert eine 1,0-Release-Version, sie wird jedoch nicht festgelegt. Sie können diese Eigenschaft in Ihrer POM-Datei als reguläre Eigenschaft.