Author: bentmann
Date: Mon May 31 16:34:51 2010
New Revision: 949801
URL: http://svn.apache.org/viewvc?rev=949801&view=rev
Log:
[MNG-4696] [regression] MavenProject.getDependencyArtifacts() misses elements
Added:
maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/artifact/factory/DefaultArtifactFactory.java
- copied unchanged from r949698,
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/artifact/factory/DefaultArtifactFactory.java
Removed:
maven/maven-3/trunk/maven-compat/src/main/java/org/apache/maven/artifact/factory/
Modified:
maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
Modified:
maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
URL:
http://svn.apache.org/viewvc/maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java?rev=949801&r1=949800&r2=949801&view=diff
==============================================================================
---
maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
(original)
+++
maven/maven-3/trunk/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java
Mon May 31 16:34:51 2010
@@ -18,14 +18,15 @@ package org.apache.maven.lifecycle.inter
import org.apache.maven.ProjectDependenciesResolver;
import org.apache.maven.artifact.Artifact;
import org.apache.maven.artifact.ArtifactUtils;
+import org.apache.maven.artifact.factory.ArtifactFactory;
import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
import org.apache.maven.artifact.resolver.ArtifactResolutionException;
import org.apache.maven.artifact.resolver.MultipleArtifactsNotFoundException;
import org.apache.maven.execution.MavenSession;
import org.apache.maven.lifecycle.LifecycleExecutionException;
import org.apache.maven.lifecycle.MavenExecutionPlan;
-import org.apache.maven.model.Dependency;
import org.apache.maven.project.MavenProject;
+import org.apache.maven.project.artifact.InvalidDependencyVersionException;
import org.codehaus.plexus.component.annotations.Component;
import org.codehaus.plexus.component.annotations.Requirement;
import org.codehaus.plexus.logging.Logger;
@@ -50,6 +51,9 @@ public class LifecycleDependencyResolver
@Requirement
private Logger logger;
+ @Requirement
+ private ArtifactFactory artifactFactory;
+
@SuppressWarnings({"UnusedDeclaration"})
public LifecycleDependencyResolver()
{
@@ -117,16 +121,19 @@ public class LifecycleDependencyResolver
Set<Artifact> artifacts =
getProjectDependencies( project, scopesToCollect, scopesToResolve,
session, aggregating,
projectArtifacts );
- updateProjectArtifacts( project, artifacts );
- }
- private void updateProjectArtifacts( MavenProject project, Set<Artifact>
artifacts )
- {
project.setResolvedArtifacts( artifacts );
if ( project.getDependencyArtifacts() == null )
{
- project.setDependencyArtifacts( getDependencyArtifacts( project,
artifacts ) );
+ try
+ {
+ project.setDependencyArtifacts( project.createArtifacts(
artifactFactory, null, null ) );
+ }
+ catch ( InvalidDependencyVersionException e )
+ {
+ throw new LifecycleExecutionException( e );
+ }
}
}
@@ -197,25 +204,6 @@ public class LifecycleDependencyResolver
return artifacts;
}
- private Set<Artifact> getDependencyArtifacts( MavenProject project,
Set<Artifact> artifacts )
- {
- Set<String> directDependencies = new HashSet<String>(
project.getDependencies().size() * 2 );
- for ( Dependency dependency : project.getDependencies() )
- {
- directDependencies.add( dependency.getManagementKey() );
- }
-
- Set<Artifact> dependencyArtifacts = new LinkedHashSet<Artifact>(
project.getDependencies().size() * 2 );
- for ( Artifact artifact : artifacts )
- {
- if ( directDependencies.contains(
artifact.getDependencyConflictId() ) )
- {
- dependencyArtifacts.add( artifact );
- }
- }
- return dependencyArtifacts;
- }
-
private boolean areAllArtifactsInReactor( Collection<MavenProject>
projects, Collection<Artifact> artifacts )
{
Set<String> projectKeys = getReactorProjectKeys( projects );