Release prepare fails to update version information for ejb-client dependencies
-------------------------------------------------------------------------------
Key: MRELEASE-178
URL: http://jira.codehaus.org/browse/MRELEASE-178
Project: Maven 2.x Release Plugin
Issue Type: Bug
Affects Versions: 2.0-beta-4
Reporter: Eric Bernstein
If you use the dependency management section of a parent pom to include
sub-poms of the same project, the release plugin will update the version number
for those projects as part of the prepare phase.
Unfortunately, if you have two dependencies with the same groupId and
artifactId (as is the case with generated ejb-clients) prepare will just update
one of them.
I believe the problem in the code is in
AbstractRewritePomsPhase.updateDomVersion. The code currently uses an xpath
expression matching on groupId and artifactId and then calls
xpath.getSingleNode to find the object to update. This will leave out one of
the dependencies (either ejb or ejb-client).
I'm having a little trouble writing a unit test for this (hence no patch
upload), but if I could do that, I believe the fix would either be looping over
the elements returned from the xpath expression, or altering the xpath
expression (and the rest of the artifact handling - read: bigger change) to be
more explicit about what artifacts it's looking at (including type, classifier,
etc...).
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira