resolution of concurrent SNAPSHOT artifacts from multiple repositories should
use timestamp instead of buildNumber
-------------------------------------------------------------------------------------------------------------------
Key: MNG-5008
URL: http://jira.codehaus.org/browse/MNG-5008
Project: Maven 2 & 3
Issue Type: Bug
Components: Dependencies
Affects Versions: 3.0.1, 2.2.1
Reporter: Julien CARSIQUE
When getting a SNAPSHOT artifact from multiple repositories, Maven must choose
the more recent one. Using buildNumber is useless and meaningless as the two
repositories have separate incrementation of their buildNumber.
For example, retrieving the two following metadata:
<metadata>
<groupId>org.nuxeo.runtime</groupId>
<artifactId>nuxeo-runtime-parent</artifactId>
<version>5.4.1-SNAPSHOT</version>
<versioning>
<snapshot>
<timestamp>20110202.045408</timestamp>
<buildNumber>48</buildNumber>
</snapshot>
<lastUpdated>20110202045420</lastUpdated>
</versioning>
</metadata>
<metadata>
<groupId>org.nuxeo.runtime</groupId>
<artifactId>nuxeo-runtime-parent</artifactId>
<version>5.4.1-SNAPSHOT</version>
<versioning>
<snapshot>
<timestamp>20110206.141840</timestamp>
<buildNumber>18</buildNumber>
</snapshot>
<lastUpdated>20110206141840</lastUpdated>
</versioning>
</metadata>
As you can see, the snapshot artifact with timestamp 20110206.141840 is more
recent than the one with timestamp 20110202.045408.
But when parsing the POM, comparing metadata, the oldest artifact will be
downloaded.
I saw that issue raised on Jenkins which uses Maven API. Last year, I've
encountered the same issue with Nexus (also using Maven API) for which a
workaround was easily done as Nexus aggregates information from multiple
repositories. Such workaround may not be possible in Jenkins, or when directly
building with Maven. That need to be fixed in the Maven API.
I guess it comes from
http://svn.apache.org/viewvc/maven/maven-3/tags/maven-3.0.2/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/DefaultArtifactVersion.java?view=markup
--
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