You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by br...@apache.org on 2005/07/27 16:18:01 UTC

svn commit: r225524 - in /maven/components/trunk: maven-artifact/src/main/java/org/apache/maven/artifact/factory/ maven-artifact/src/test/java/org/apache/maven/artifact/resolver/ maven-model/ maven-plugins/maven-release-plugin/src/main/java/org/apache/...

Author: brett
Date: Wed Jul 27 07:17:41 2005
New Revision: 225524

URL: http://svn.apache.org/viewcvs?rev=225524&view=rev
Log:
PR: MNG-649
add classifier to dependency. it becomes part of the dependency key along with type when not null

Modified:
    maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/factory/ArtifactFactory.java
    maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/factory/DefaultArtifactFactory.java
    maven/components/trunk/maven-artifact/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactCollectorTest.java
    maven/components/trunk/maven-model/maven.mdo
    maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/release/PrepareReleaseMojo.java
    maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/transformer/VersionTransformer.java
    maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
    maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/MavenProject.java
    maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java
    maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/TestArtifactResolver.java

Modified: maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/factory/ArtifactFactory.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/factory/ArtifactFactory.java?rev=225524&r1=225523&r2=225524&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/factory/ArtifactFactory.java (original)
+++ maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/factory/ArtifactFactory.java Wed Jul 27 07:17:41 2005
@@ -42,10 +42,10 @@
                                            String classifier );
 
     Artifact createDependencyArtifact( String groupId, String artifactId, VersionRange versionRange, String type,
-                                       String scope );
+                                       String classifier, String scope );
 
     Artifact createDependencyArtifact( String groupId, String artifactId, VersionRange versionRange, String type,
-                                       String scope, String inheritedScope );
+                                       String classifier, String scope, String inheritedScope );
 
     Artifact createBuildArtifact( String groupId, String artifactId, String version, String packaging );
 

Modified: maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/factory/DefaultArtifactFactory.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/factory/DefaultArtifactFactory.java?rev=225524&r1=225523&r2=225524&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/factory/DefaultArtifactFactory.java (original)
+++ maven/components/trunk/maven-artifact/src/main/java/org/apache/maven/artifact/factory/DefaultArtifactFactory.java Wed Jul 27 07:17:41 2005
@@ -50,15 +50,15 @@
     }
 
     public Artifact createDependencyArtifact( String groupId, String artifactId, VersionRange versionRange, String type,
-                                              String scope )
+                                              String classifier, String scope )
     {
-        return createArtifact( groupId, artifactId, versionRange, null, type, null, null );
+        return createArtifact( groupId, artifactId, versionRange, null, type, classifier, null );
     }
 
     public Artifact createDependencyArtifact( String groupId, String artifactId, VersionRange versionRange, String type,
-                                              String scope, String inheritedScope )
+                                              String classifier, String scope, String inheritedScope )
     {
-        return createArtifact( groupId, artifactId, versionRange, scope, type, null, inheritedScope );
+        return createArtifact( groupId, artifactId, versionRange, scope, type, classifier, inheritedScope );
     }
 
     public Artifact createBuildArtifact( String groupId, String artifactId, String version, String packaging )

Modified: maven/components/trunk/maven-artifact/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactCollectorTest.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-artifact/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactCollectorTest.java?rev=225524&r1=225523&r2=225524&view=diff
==============================================================================
--- maven/components/trunk/maven-artifact/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactCollectorTest.java (original)
+++ maven/components/trunk/maven-artifact/src/test/java/org/apache/maven/artifact/resolver/DefaultArtifactCollectorTest.java Wed Jul 27 07:17:41 2005
@@ -419,8 +419,10 @@
             ArtifactSpec a = (ArtifactSpec) artifacts.get( key );
             try
             {
-                return new ResolutionGroup( artifact, createArtifacts( artifactFactory, a.dependencies, artifact.getScope(),
-                                                             artifact.getDependencyFilter() ), Collections.EMPTY_LIST );
+                return new ResolutionGroup( artifact, createArtifacts( artifactFactory, a.dependencies,
+                                                                       artifact.getScope(),
+                                                                       artifact.getDependencyFilter() ),
+                                                      Collections.EMPTY_LIST );
             }
             catch ( InvalidVersionSpecificationException e )
             {
@@ -445,7 +447,8 @@
 
                 VersionRange versionRange = VersionRange.createFromVersionSpec( d.getVersion() );
                 Artifact artifact = artifactFactory.createDependencyArtifact( d.getGroupId(), d.getArtifactId(),
-                                                                              versionRange, d.getType(), d.getScope(),
+                                                                              versionRange, d.getType(),
+                                                                              d.getClassifier(), d.getScope(),
                                                                               inheritedScope );
 
                 if ( artifact != null && ( dependencyFilter == null || dependencyFilter.include( artifact ) ) )

Modified: maven/components/trunk/maven-model/maven.mdo
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-model/maven.mdo?rev=225524&r1=225523&r2=225524&view=diff
==============================================================================
--- maven/components/trunk/maven-model/maven.mdo (original)
+++ maven/components/trunk/maven-model/maven.mdo Wed Jul 27 07:17:41 2005
@@ -1211,6 +1211,16 @@
           <defaultValue>jar</defaultValue>
         </field>
         <field>
+          <name>classifier</name>
+          <version>4.0.0</version>
+          <description>
+            The classifier of the dependency. This allows distinguishing two artifacts that belong to the same POM but
+            were built differently, and is appended to the filename after the version.
+          </description>
+          <type>String</type>
+          <required>false</required>
+        </field>
+        <field>
           <name>properties</name>
           <version>3.0.0</version>
           <description><![CDATA[
@@ -1266,14 +1276,9 @@
         <codeSegment>
           <version>4.0.0</version>
           <code><![CDATA[
-            public String getId()
-            {
-                return groupId + ":" + artifactId + ":" + type + ":" + version;
-            }
-            
             public String getManagementKey()
             {
-                return groupId + ":" + artifactId + ":" + type;
+                return groupId + ":" + artifactId + ":" + type + classifier != null ? ":" + classifier : "";
             }
           ]]></code>
         </codeSegment>

Modified: maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/release/PrepareReleaseMojo.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/release/PrepareReleaseMojo.java?rev=225524&r1=225523&r2=225524&view=diff
==============================================================================
--- maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/release/PrepareReleaseMojo.java (original)
+++ maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/release/PrepareReleaseMojo.java Wed Jul 27 07:17:41 2005
@@ -74,21 +74,21 @@
      * @readonly
      */
     private boolean interactive = true;
-    
+
     /**
      * @parameter expression="${component.org.apache.maven.artifact.metadata.ArtifactMetadataSource}"
      * @required
      * @readonly
      */
     private ArtifactMetadataSource artifactMetadataSource;
-    
+
     /**
      * @parameter expression="${component.org.codehaus.plexus.components.inputhandler.InputHandler}"
      * @required
      * @readonly
      */
     private InputHandler inputHandler;
-    
+
     /**
      * @parameter expression="${localRepository}"
      * @required
@@ -122,23 +122,24 @@
         checkForPresenceOfSnapshots();
 
         transformPomToReleaseVersionPom();
-        
+
         generateReleasePropertiesFile();
-        
+
         generateReleasePom();
-        
+
         checkInReleaseVersionPom();
 
         tagRelease();
 
         transformPomToSnapshotVersionPom();
-        
+
         new File( basedir, RELEASE_POM ).delete();
 
         checkInSnapshotVersionPom();
     }
 
-    private void generateReleasePropertiesFile() throws MojoExecutionException
+    private void generateReleasePropertiesFile()
+        throws MojoExecutionException
     {
         try
         {
@@ -349,29 +350,30 @@
         if ( project.hasParent() )
         {
             Artifact parentArtifact = project.getParentArtifact();
-            
+
             if ( isSnapshot( parentArtifact.getBaseVersion() ) )
             {
                 String version = resolveVersion( parentArtifact, "parent" );
-                
+
                 model.getParent().setVersion( version );
             }
         }
-        
+
         //Rewrite dependencies section
         Map artifactMap = ArtifactUtils.artifactMapByArtifactId( project.getArtifacts() );
-        
+
         for ( Iterator i = model.getDependencies().iterator(); i.hasNext(); )
         {
             Dependency dep = (Dependency) i.next();
-            
-            String conflictId = ArtifactUtils.artifactId( dep.getGroupId(), dep.getArtifactId(), dep.getType(), dep.getVersion() );
-            
+
+            String conflictId = ArtifactUtils.artifactId( dep.getGroupId(), dep.getArtifactId(), dep.getType(),
+                                                          dep.getClassifier(), dep.getVersion() );
+
             Artifact artifact = (Artifact) artifactMap.get( conflictId );
-            
+
             dep.setVersion( artifact.getVersion() );
         }
-        
+
         try
         {
             PomTransformer transformer = new VersionTransformer();
@@ -391,43 +393,45 @@
             throw new MojoExecutionException( "Can't transform pom to its release version form.", e );
         }
     }
-    
-    private void generateReleasePom() throws MojoExecutionException
+
+    private void generateReleasePom()
+        throws MojoExecutionException
     {
         MavenProject releaseProject = new MavenProject( project );
         Model releaseModel = releaseProject.getModel();
-        
+
         //Rewrite parent version
         if ( project.hasParent() )
         {
             Artifact parentArtifact = project.getParentArtifact();
-            
+
             if ( isSnapshot( parentArtifact.getBaseVersion() ) )
             {
                 String version = resolveVersion( parentArtifact, "parent" );
-                
+
                 model.getParent().setVersion( version );
             }
         }
 
         //Rewrite dependencies section
         List newdeps = new ArrayList();
-        
+
         for ( Iterator i = releaseProject.getArtifacts().iterator(); i.hasNext(); )
         {
             Artifact artifact = (Artifact) i.next();
-            
+
             Dependency newdep = new Dependency();
-            
+
             newdep.setArtifactId( artifact.getArtifactId() );
             newdep.setGroupId( artifact.getGroupId() );
             newdep.setVersion( artifact.getVersion() );
             newdep.setType( artifact.getType() );
             newdep.setScope( artifact.getScope() );
-            
+            newdep.setClassifier( artifact.getClassifier() );
+
             newdeps.add( newdep );
         }
-        
+
         releaseModel.setDependencies( newdeps );
 
         //Rewrite plugins version
@@ -439,17 +443,17 @@
                 for ( Iterator j = releaseModel.getBuild().getPlugins().iterator(); j.hasNext(); )
                 {
                     Plugin plugin = (Plugin) j.next();
-                    if ( ArtifactUtils.versionlessKey(artifact).equals( plugin.getKey() ) )
+                    if ( ArtifactUtils.versionlessKey( artifact ).equals( plugin.getKey() ) )
                     {
                         String version = resolveVersion( artifact, "plugin" );
-                        
+
                         plugin.setGroupId( artifact.getGroupId() );
                         plugin.setVersion( version );
                     }
                 }
             }
         }
-        
+
         //Rewrite report version
         for ( Iterator i = releaseProject.getReportArtifacts().iterator(); i.hasNext(); )
         {
@@ -457,16 +461,16 @@
             if ( isSnapshot( artifact.getBaseVersion() ) )
             {
                 List reportPlugins = releaseProject.getReportPlugins();
-                
+
                 if ( reportPlugins != null )
                 {
                     for ( Iterator j = reportPlugins.iterator(); j.hasNext(); )
                     {
                         ReportPlugin plugin = (ReportPlugin) j.next();
-                        if ( ArtifactUtils.versionlessKey(artifact).equals( plugin.getKey() ) )
+                        if ( ArtifactUtils.versionlessKey( artifact ).equals( plugin.getKey() ) )
                         {
                             String version = resolveVersion( artifact, "report" );
-                            
+
                             plugin.setGroupId( artifact.getGroupId() );
                             plugin.setVersion( version );
                         }
@@ -474,15 +478,15 @@
                 }
             }
         }
-        
+
         File releasePomFile = new File( basedir, RELEASE_POM );
-        
+
         Writer writer = null;
-        
+
         try
         {
             writer = new FileWriter( releasePomFile );
-            
+
             releaseProject.writeModel( writer );
         }
         catch ( IOException e )
@@ -493,7 +497,7 @@
         {
             IOUtil.close( writer );
         }
-        
+
         try
         {
             ScmBean scm = getScm();
@@ -501,11 +505,11 @@
             scm.setWorkingDirectory( basedir );
 
             List scmChanges = scm.getStatus();
-            
+
             for ( Iterator i = scmChanges.iterator(); i.hasNext(); )
             {
                 ScmFile f = (ScmFile) i.next();
-                
+
                 if ( f.getPath().equals( "release-pom.xml" ) && f.getStatus() != ScmFileStatus.MODIFIED )
                 {
                     getScm().add( RELEASE_POM );
@@ -522,21 +526,21 @@
         }
     }
 
-    private String resolveVersion( Artifact artifact, String artifactUsage ) 
+    private String resolveVersion( Artifact artifact, String artifactUsage )
         throws MojoExecutionException
     {
         if ( artifact.getFile() == null )
         {
             try
             {
-                artifactMetadataSource.retrieve(artifact, localRepository, project.getPluginArtifactRepositories() );
+                artifactMetadataSource.retrieve( artifact, localRepository, project.getPluginArtifactRepositories() );
             }
             catch ( ArtifactMetadataRetrievalException e )
             {
                 throw new MojoExecutionException( "Cannot resolve " + artifactUsage + ": " + artifact.getId(), e );
             }
         }
-        
+
         return artifact.getVersion();
     }
 

Modified: maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/transformer/VersionTransformer.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/transformer/VersionTransformer.java?rev=225524&r1=225523&r2=225524&view=diff
==============================================================================
--- maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/transformer/VersionTransformer.java (original)
+++ maven/components/trunk/maven-plugins/maven-release-plugin/src/main/java/org/apache/maven/plugin/transformer/VersionTransformer.java Wed Jul 27 07:17:41 2005
@@ -83,6 +83,8 @@
 
             Node type = node.selectSingleNode( "type" );
 
+            Node classifier = node.selectSingleNode( "classifier" );
+
             String typeText = "jar";
 
             if ( type != null )
@@ -91,7 +93,8 @@
             }
             Node version = node.selectSingleNode( "version" );
 
-            String versionText = getDependency( groupId.getText(), artifactId.getText(), typeText ).getVersion();
+            String versionText = getDependency( groupId.getText(), artifactId.getText(), typeText,
+                                                classifier.getText() ).getVersion();
             if ( version != null )
             {
                 version.setText( versionText );
@@ -183,14 +186,16 @@
         }
     }
 
-    private Dependency getDependency( String groupId, String artifactId, String type )
+    private Dependency getDependency( String groupId, String artifactId, String type, String classifier )
     {
+        // TODO: equals() in Dependency would be better
         for ( Iterator i = getUpdatedModel().getDependencies().iterator(); i.hasNext(); )
         {
             Dependency dependency = (Dependency) i.next();
 
             if ( dependency.getGroupId().equals( groupId ) && dependency.getArtifactId().equals( artifactId ) &&
-                dependency.getType().equals( type ) )
+                dependency.getType().equals( type ) && dependency.getClassifier() != null
+                ? dependency.getClassifier().equals( classifier ) : classifier == null )
             {
                 return dependency;
             }

Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java?rev=225524&r1=225523&r2=225524&view=diff
==============================================================================
--- maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java (original)
+++ maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/DefaultMavenProjectBuilder.java Wed Jul 27 07:17:41 2005
@@ -86,7 +86,7 @@
     private PlexusContainer container;
 
     protected ArtifactResolver artifactResolver;
-    
+
     protected ArtifactMetadataSource artifactMetadataSource;
 
     private ArtifactFactory artifactFactory;
@@ -94,7 +94,7 @@
     private ModelInheritanceAssembler modelInheritanceAssembler;
 
     private ModelValidator validator;
-    
+
     // TODO: make it a component
     private MavenXpp3Reader modelReader;
 
@@ -146,12 +146,13 @@
         Artifact projectArtifact = project.getArtifact();
 
         Map managedVersions = createManagedVersionMap( project.getDependencyManagement() );
-        
+
         ensureMetadataSourceIsInitialized();
 
         try
         {
-            project.setDependencyArtifacts( MavenProject.createArtifacts( artifactFactory, project.getDependencies() ) );
+            project.setDependencyArtifacts(
+                MavenProject.createArtifacts( artifactFactory, project.getDependencies() ) );
         }
         catch ( InvalidVersionSpecificationException e )
         {
@@ -166,8 +167,8 @@
         project.setArtifacts( result.getArtifacts() );
         return project;
     }
-    
-    private void ensureMetadataSourceIsInitialized() 
+
+    private void ensureMetadataSourceIsInitialized()
         throws ProjectBuildingException
     {
         if ( artifactMetadataSource == null )
@@ -199,7 +200,7 @@
                     VersionRange versionRange = VersionRange.createFromVersionSpec( d.getVersion() );
                     Artifact artifact = artifactFactory.createDependencyArtifact( d.getGroupId(), d.getArtifactId(),
                                                                                   versionRange, d.getType(),
-                                                                                  d.getScope() );
+                                                                                  d.getClassifier(), d.getScope() );
                     map.put( d.getManagementKey(), artifact );
                 }
                 catch ( InvalidVersionSpecificationException e )
@@ -231,7 +232,8 @@
         modelCache.put( createCacheKey( model.getGroupId(), model.getArtifactId(), model.getVersion() ), model );
 
         MavenProject project = build( projectDescriptor.getAbsolutePath(), model, localRepository,
-                                      Collections.EMPTY_LIST, externalProfiles, projectDescriptor.getAbsoluteFile().getParentFile() );
+                                      Collections.EMPTY_LIST, externalProfiles,
+                                      projectDescriptor.getAbsoluteFile().getParentFile() );
 
         // Only translate the base directory for files in the source tree
         pathTranslator.alignToBaseDirectory( project.getModel(), projectDescriptor );
@@ -345,10 +347,11 @@
         }
 
         Model originalModel = ModelUtils.cloneModel( model );
-        
+
         List repositories = new ArrayList( aggregatedRemoteWagonRepositories );
-        
-        MavenProject project = assembleLineage( model, lineage, repositories, localRepository, externalProfiles, projectDir );
+
+        MavenProject project = assembleLineage( model, lineage, repositories, localRepository, externalProfiles,
+                                                projectDir );
 
         project.setOriginalModel( originalModel );
 
@@ -479,7 +482,9 @@
         return project;
     }
 
-    /** @noinspection CollectionDeclaredAsConcreteClass*/
+    /**
+     * @noinspection CollectionDeclaredAsConcreteClass
+     */
     private MavenProject assembleLineage( Model model, LinkedList lineage, List aggregatedRemoteWagonRepositories,
                                           ArtifactRepository localRepository, List externalProfiles, File projectDir )
         throws ProjectBuildingException
@@ -520,20 +525,20 @@
             {
                 throw new ProjectBuildingException( "Missing version element from parent element" );
             }
-            
+
             model = getCachedModel( parentModel.getGroupId(), parentModel.getArtifactId(), parentModel.getVersion() );
-            
+
             // the only way this will have a value is if we find the parent on disk...
             File parentProjectDir = null;
-            
+
             String parentRelativePath = parentModel.getRelativePath();
-            
+
             // if we can't find a cached model matching the parent spec, then let's try to look on disk using
             // <relativePath/>
-            if ( model == null && projectDir != null && StringUtils.isNotEmpty(parentRelativePath) )
+            if ( model == null && projectDir != null && StringUtils.isNotEmpty( parentRelativePath ) )
             {
                 File parentDescriptor = new File( projectDir, parentRelativePath );
-                
+
                 try
                 {
                     parentDescriptor = parentDescriptor.getCanonicalFile();
@@ -541,34 +546,37 @@
                 catch ( IOException e )
                 {
                     getLogger().debug( "Failed to canonicalize potential parent POM: \'" + parentDescriptor + "\'", e );
-                    
+
                     parentDescriptor = null;
                 }
-                
+
                 if ( parentDescriptor != null && parentDescriptor.exists() )
                 {
                     Model candidateParent = readModel( parentDescriptor );
-                    
+
                     // this works because parent-version is still required...
-                    if ( parentModel.getGroupId().equals( candidateParent.getGroupId() )
-                        && parentModel.getArtifactId().equals( candidateParent.getArtifactId() )
-                        && ( parentModel.getVersion().equals( candidateParent.getVersion() ) 
-                            || ( candidateParent.getParent() != null 
-                                && parentModel.getVersion().equals(candidateParent.getParent().getVersion() ) ) ) )
+                    if ( parentModel.getGroupId().equals( candidateParent.getGroupId() ) &&
+                        parentModel.getArtifactId().equals( candidateParent.getArtifactId() ) && (
+                        parentModel.getVersion().equals( candidateParent.getVersion() ) || (
+                            candidateParent.getParent() != null &&
+                                parentModel.getVersion().equals( candidateParent.getParent().getVersion() ) ) ) )
                     {
                         model = candidateParent;
-                        
+
                         parentProjectDir = parentDescriptor.getParentFile();
-                        
-                        getLogger().debug( "Using parent-POM from the project hierarchy at: \'" + parentModel.getRelativePath() + "\' for project: " + project.getId() );
+
+                        getLogger().debug( "Using parent-POM from the project hierarchy at: \'" +
+                            parentModel.getRelativePath() + "\' for project: " + project.getId() );
                     }
                     else
                     {
-                        getLogger().debug("Invalid parent-POM referenced by relative path: \'" + parentModel.getRelativePath() + "\'. It did not match parent specification in " + project.getId() );
+                        getLogger().debug( "Invalid parent-POM referenced by relative path: \'" +
+                            parentModel.getRelativePath() + "\'. It did not match parent specification in " +
+                            project.getId() );
                     }
                 }
             }
-            
+
             Artifact parentArtifact = null;
 
             // only resolve the parent model from the repository system if we didn't find it on disk...
@@ -590,7 +598,8 @@
                 model = findModelFromRepository( parentArtifact, aggregatedRemoteWagonRepositories, localRepository );
             }
 
-            MavenProject parent = assembleLineage( model, lineage, aggregatedRemoteWagonRepositories, localRepository, externalProfiles, parentProjectDir );
+            MavenProject parent = assembleLineage( model, lineage, aggregatedRemoteWagonRepositories, localRepository,
+                                                   externalProfiles, parentProjectDir );
 
             project.setParent( parent );
 
@@ -704,10 +713,10 @@
     }
 
     protected Set createReportArtifacts( List reports )
-    throws ProjectBuildingException
+        throws ProjectBuildingException
     {
         Set pluginArtifacts = new HashSet();
-        
+
         if ( reports != null )
         {
             for ( Iterator i = reports.iterator(); i.hasNext(); )

Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/MavenProject.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/MavenProject.java?rev=225524&r1=225523&r2=225524&view=diff
==============================================================================
--- maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/MavenProject.java (original)
+++ maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/MavenProject.java Wed Jul 27 07:17:41 2005
@@ -19,9 +19,9 @@
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.ArtifactUtils;
 import org.apache.maven.artifact.DependencyResolutionRequiredException;
-import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
 import org.apache.maven.artifact.factory.ArtifactFactory;
 import org.apache.maven.artifact.repository.ArtifactRepository;
+import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
 import org.apache.maven.model.Build;
 import org.apache.maven.model.CiManagement;
 import org.apache.maven.model.Contributor;
@@ -387,6 +387,7 @@
                 dependency.setVersion( a.getVersion() );
                 dependency.setScope( a.getScope() );
                 dependency.setType( a.getType() );
+                dependency.setClassifier( a.getClassifier() );
 
                 list.add( dependency );
             }
@@ -471,6 +472,7 @@
                 dependency.setVersion( a.getVersion() );
                 dependency.setScope( a.getScope() );
                 dependency.setType( a.getType() );
+                dependency.setClassifier( a.getClassifier() );
 
                 list.add( dependency );
             }
@@ -552,6 +554,7 @@
                 dependency.setVersion( a.getVersion() );
                 dependency.setScope( a.getScope() );
                 dependency.setType( a.getType() );
+                dependency.setClassifier( a.getClassifier() );
 
                 list.add( dependency );
             }

Modified: maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java?rev=225524&r1=225523&r2=225524&view=diff
==============================================================================
--- maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java (original)
+++ maven/components/trunk/maven-project/src/main/java/org/apache/maven/project/artifact/MavenMetadataSource.java Wed Jul 27 07:17:41 2005
@@ -49,9 +49,9 @@
     extends AbstractLogEnabled
     implements ArtifactMetadataSource
 {
-    
+
     public static final String ROLE_HINT = "maven";
-    
+
     private MavenProjectBuilder mavenProjectBuilder;
 
     private ArtifactFactory artifactFactory;
@@ -150,8 +150,8 @@
 
             VersionRange versionRange = VersionRange.createFromVersionSpec( d.getVersion() );
             Artifact artifact = artifactFactory.createDependencyArtifact( d.getGroupId(), d.getArtifactId(),
-                                                                          versionRange, d.getType(), d.getScope(),
-                                                                          inheritedScope );
+                                                                          versionRange, d.getType(), d.getClassifier(),
+                                                                          d.getScope(), inheritedScope );
 
             if ( artifact != null && ( dependencyFilter == null || dependencyFilter.include( artifact ) ) )
             {

Modified: maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/TestArtifactResolver.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/TestArtifactResolver.java?rev=225524&r1=225523&r2=225524&view=diff
==============================================================================
--- maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/TestArtifactResolver.java (original)
+++ maven/components/trunk/maven-project/src/test/java/org/apache/maven/project/TestArtifactResolver.java Wed Jul 27 07:17:41 2005
@@ -53,7 +53,7 @@
     implements Contextualizable
 {
     public static final String ROLE = TestArtifactResolver.class.getName();
-    
+
     private ArtifactRepositoryFactory repositoryFactory;
 
     private PlexusContainer container;
@@ -146,7 +146,8 @@
 
                 VersionRange versionRange = VersionRange.createFromVersionSpec( d.getVersion() );
                 Artifact artifact = artifactFactory.createDependencyArtifact( d.getGroupId(), d.getArtifactId(),
-                                                                              versionRange, d.getType(), d.getScope(),
+                                                                              versionRange, d.getType(),
+                                                                              d.getClassifier(), d.getScope(),
                                                                               inheritedScope );
                 if ( artifact != null )
                 {
@@ -157,7 +158,7 @@
             return projectArtifacts;
         }
     }
-    
+
     public Source source()
     {
         return new Source( artifactFactory, repositoryFactory, container );



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org