Ich kann keine Lösung finden, um einige Maven-Profile auf release:prepare
und release:perform
(beide) zu aktivieren. Etwas wie das:
funktioniert einfach nicht. Ich weiß, dass die releaseProfiles
Einstellung nur während release:perform
funktioniert, also ich gerade diese arguments
Einstellung ist genau, was ich will, aber my-profile
Profil ist während der Ausführung nicht aktiv. Mache ich etwas falsch?
Das sieht wie eine doppelte Frage aus. Bitte werfen Sie einen Blick auf diese Frage, sie hat eine Antwort. maven release plugin ignoriert releaseProfile
Im Wesentlichen Version 2.2.1 des Release-Plugins fügt einen releaseProfiles
-Parameter hinzu, mit dem Sie die Profile definieren können, die während der Veröffentlichung aktiviert werden sollen.
Leider sieht es so aus, als ob es einen Fehler gibt, der es verbietet, das zu tun, was Sie wollen ...
Bearbeiten
Eine Sache, die ich in diesem Fall verwendet habe, ist nicht das Argument -P
zu verwenden, sondern das Profil über eine Umgebungseinstellung mit -Denv=release
auszulösen. Dann habe ich im POM die Profilaktivierung basierend auf dem Wert von env
. Das hat immer für mich funktioniert.
Da maven release plugin eine zusätzliche Instanz starten muss, müssen Sie zusätzliche Argumente angeben. Für Sie Fall
%Vor%und Ausführung
%Vor%und ja, es muss dupliziert werden.
Es funktioniert in Jenkins, indem das Profil für beide Versionen aktiviert wird: Vorbereiten und Freigeben: Führen Sie die Ausführung beider Eigenschaften durch
%Vor%Obwohl das oben genannte gut funktioniert, fand ich mehr nützlich, um Datei-aktivierte Profile zu verwenden. Das alte Konzept mit einem "Master" Profil verursachte ein Problem, da ich das Profil in meinem Eltern Pom hatte. Das heißt, es wurde in jedem einzelnen Modul willkürlich aktiviert.
Um es zu lösen, habe ich die Dateiaktivierungsmethode im Profil verwendet. Es funktioniert sogar noch besser und als Bonus vereinfacht es die Veröffentlichung in Jenkins. In Eclipse, in der Befehlszeile, in Jenkins, alias überall, entdeckt Maven die Datei und das maven-release-plugin muss nicht konfiguriert werden. Außerdem ist das Profil nur im richtigen Modul aktiv.
Tags und Links maven maven-release-plugin