Frequently Asked Questions
- When releasing from a parent POM, won't all its modules have the same release version and dev version as this parent?
- How can I release a parent POM without releasing all its modules?
- How can I hide my username and password?
- How can I customize the comment prefix of a commit during release preparation?
- Why is
release:prepare
failing when trying to tag with"svn: Path '...' does not exist in revision ..."
- When releasing from a parent POM, won't all its modules have the same release version and dev version as this parent?
-
Maven Release Plugin will prompt for each project's version.
- How can I release a parent POM without releasing all its modules?
-
You need to pass the
-N
flag to Maven and configure the Release Plugin to pass the-N
flag on its forked builds with the-Darguments
flag.Here's an example:
mvn -N -Darguments=-N release:prepare mvn -N -Darguments=-N release:perform
- How can I hide my username and password?
-
Add a server-entry to your
settings.xml
, where you define your credentials (see settings.xml#servers for more details). Since you can't set an id for thescm
in yourpom.xml
, you should add a property pointing to the server-id.<project> ... <properties> <project.scm.id>my-scm-server</project.scm.id> </properties> </project>
- How can I customize the comment prefix of a commit during release preparation?
-
By default the plugin will prefix the comment with
[maven-release-plugin]
. You can change this by adding-DscmCommentPrefix=#42
to the Maven command.
If you need to end this with a linebreak, add${line.separator}
.
If the comment prefix contains whitespace characters, surround the argument with quotes.When using the plugin-configuration, you can't end with a space, because Plexus will trim the content. But you can end with a linebreak just like the example below:
<configuration> <scmCommentPrefix>#42${line.separator}</scmCommentPrefix> ... </configuration>
- Why is
release:prepare
failing when trying to tag with"svn: Path '...' does not exist in revision ..."
-
If the
pom.xml
has no scm-section but inherits one from its parent, the prepare goal will fail when trying to tag. The message will be something like:svn: Path '...' does not exist in revision ...
To fix it, roll-back the release, add the
scm
section to thepom.xml
, commit and retry the release.