maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anton Smeenk (JIRA)" <j...@codehaus.org>
Subject [jira] (MNG-5324) Incorrect parsing of metadata by Maven: Cannot find snapshot artifact with older timestamp
Date Thu, 09 Aug 2012 14:07:21 GMT
Anton Smeenk created MNG-5324:
---------------------------------

             Summary: Incorrect parsing of metadata by Maven: Cannot find snapshot artifact
with older timestamp
                 Key: MNG-5324
                 URL: https://jira.codehaus.org/browse/MNG-5324
             Project: Maven 2 & 3
          Issue Type: Bug
          Components: Artifacts and Repositories
    Affects Versions: 3.0.4
            Reporter: Anton Smeenk


Maven can only retrieve an artifact from Nexus with a classifier with latest timestamp.
Artifacts with classifiers with an older timestamp cannot be resolved.
For example. If I deploy an artifact Apple with classifier A and a bit later deploy the same
artifact with classifier B.

Next I want to retrieve the artifacts from Nexus:
For a module Banana, which needs Apple with classifier A the Artifact resolver will fail.
For a module Strawberry, which needs Apple with classifier B the Artifact resolver will succesfully
resolve the artifact.

I found the cause for this behaviour:
With an proxy between Maven and Nexus I could see the behavour of Maven, at the moment that
I want to fetch an artifact:

First the metadata.xml is fetched from Nexus. This file does contain the timestamp of the
latest artifact in nexus and all timestamps of older artifacts, with different classifier.

>From this metdata file Maven figures out what the correct name is for the artifact.
But Maven can resolve the name of classifierb, but not the name of classifierB. 
The metadata is not correctly parsed! All information is there, but still Maven can only find
the artifact with the latest timestamp.

Here is an example of an metadata file:
 <metadata modelVersion="1.1.0">
  <groupId>com.ccv.systems.modules.gen_modem</groupId> 
  <artifactId>modem</artifactId> 
  <version>07.20.3-SNAPSHOT</version> 
 <versioning>
 <snapshot>
  <timestamp>20120809.112920</timestamp> 
  <buildNumber>97</buildNumber> 
  </snapshot>
  <lastUpdated>20120809112920</lastUpdated> 
 <snapshotVersion>
  <classifier>classsifierA</classifier> 
  <extension>jar</extension> 
  <value>07.20.3-20120809.112124-88</value> 
  <updated>20120809112124</updated> 
  </snapshotVersion>
 <snapshotVersion>
  <classifier>classsifierB</classifier> 
  <extension>jar</extension> 
  <value>07.20.3-20120809.112920-97</value> 
  <updated>20120809112920</updated> 
  </snapshotVersion>
  </snapshotVersions>
  </versioning>
  </metadata>


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message