I cannot find a solution for activating some Maven profile on release:prepare
and release:perform
(both) goals. Something like this:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.2.1</version>
<configuration>
<useReleaseProfile>false</useReleaseProfile>
<goals>deploy</goals>
<arguments>-Pmy-release</arguments>
</configuration>
</plugin>
just doesn't work. I know that releaseProfiles
setting works only during release:perform
so I just though that arguments
setting is exactly what I want, but my-profile
profile is not active during the execution. Am I doing something wrong?
This looks like a duplicate question. Please take a look at this question, it has an answer. maven release plugin ignores releaseProfile
Basically version 2.2.1 of the release plugin adds a releaseProfiles
parameter that will allow you to define the profiles to enable during release.
http://maven.apache.org/plugins/maven-release-plugin/examples/perform-release.html
Unfortunately, it looks like there's a bug that will prohibit it from doing what you want...
Edit
One thing that I have used in this case is not using the -P
argument, but rather triggering the profile through an environment setting using -Denv=release
. Then in the POM, I have the profile activation based on the value of env
. This has always worked for me.