Class Maven31DependencyGraphBuilder

java.lang.Object
org.codehaus.plexus.logging.AbstractLogEnabled
org.apache.maven.shared.dependency.graph.internal.Maven31DependencyGraphBuilder
All Implemented Interfaces:
DependencyGraphBuilder, org.codehaus.plexus.logging.LogEnabled

@Component(role=DependencyGraphBuilder.class, hint="maven31") public class Maven31DependencyGraphBuilder extends org.codehaus.plexus.logging.AbstractLogEnabled implements DependencyGraphBuilder
Wrapper around Eclipse Aether dependency resolver, used in Maven 3.1.
Since:
2.1
See Also:
  • ProjectDependenciesResolver
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private org.apache.maven.project.ProjectDependenciesResolver
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    buildDependencyGraph(org.apache.maven.project.ProjectBuildingRequest buildingRequest, org.apache.maven.artifact.resolver.filter.ArtifactFilter filter)
    Builds the dependency graph for Maven 3.1+.
    buildDependencyGraph(org.apache.maven.project.ProjectBuildingRequest buildingRequest, org.apache.maven.artifact.resolver.filter.ArtifactFilter filter, Collection<org.apache.maven.project.MavenProject> reactorProjects)
    Builds the dependency graph for Maven 3.1+, eventually hacking for collecting projects from reactor not yet built.
    buildDependencyNode(DependencyNode parent, org.eclipse.aether.graph.DependencyNode node, org.apache.maven.artifact.Artifact artifact, org.apache.maven.artifact.resolver.filter.ArtifactFilter filter)
     
    private org.apache.maven.project.DependencyResolutionResult
    collectDependenciesFromReactor(org.apache.maven.project.DependencyResolutionException e, Collection<org.apache.maven.project.MavenProject> reactorProjects)
     
    private org.apache.maven.artifact.Artifact
    getDependencyArtifact(org.eclipse.aether.graph.Dependency dep)
     
    private List<org.eclipse.aether.graph.Dependency>
    getReactorDependencies(Collection<org.apache.maven.project.MavenProject> reactorProjects, List<?> dependencies)
     
    private String
    getVersionSelectedFromRange(org.eclipse.aether.version.VersionConstraint constraint)
     
    private org.apache.maven.project.DependencyResolutionResult
    resolveDependencies(org.apache.maven.project.DependencyResolutionRequest request, Collection<org.apache.maven.project.MavenProject> reactorProjects)
     

    Methods inherited from class org.codehaus.plexus.logging.AbstractLogEnabled

    enableLogging, getLogger, setupLogger, setupLogger, setupLogger

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • resolver

      @Requirement private org.apache.maven.project.ProjectDependenciesResolver resolver
  • Constructor Details

    • Maven31DependencyGraphBuilder

      public Maven31DependencyGraphBuilder()
  • Method Details

    • buildDependencyGraph

      public DependencyNode buildDependencyGraph(org.apache.maven.project.ProjectBuildingRequest buildingRequest, org.apache.maven.artifact.resolver.filter.ArtifactFilter filter) throws DependencyGraphBuilderException
      Builds the dependency graph for Maven 3.1+.
      Specified by:
      buildDependencyGraph in interface DependencyGraphBuilder
      Parameters:
      buildingRequest - the buildingRequest
      filter - artifact filter (can be null)
      Returns:
      DependencyNode containing the dependency graph.
      Throws:
      DependencyGraphBuilderException - if some of the dependencies could not be resolved.
    • buildDependencyGraph

      public DependencyNode buildDependencyGraph(org.apache.maven.project.ProjectBuildingRequest buildingRequest, org.apache.maven.artifact.resolver.filter.ArtifactFilter filter, Collection<org.apache.maven.project.MavenProject> reactorProjects) throws DependencyGraphBuilderException
      Builds the dependency graph for Maven 3.1+, eventually hacking for collecting projects from reactor not yet built.
      Specified by:
      buildDependencyGraph in interface DependencyGraphBuilder
      Parameters:
      buildingRequest - the buildingRequest
      filter - artifact filter (can be null)
      reactorProjects - Collection of those projects contained in the reactor (can be null).
      Returns:
      DependencyNode containing the dependency graph.
      Throws:
      DependencyGraphBuilderException - if some of the dependencies could not be resolved.
    • resolveDependencies

      private org.apache.maven.project.DependencyResolutionResult resolveDependencies(org.apache.maven.project.DependencyResolutionRequest request, Collection<org.apache.maven.project.MavenProject> reactorProjects) throws DependencyGraphBuilderException
      Throws:
      DependencyGraphBuilderException
    • collectDependenciesFromReactor

      private org.apache.maven.project.DependencyResolutionResult collectDependenciesFromReactor(org.apache.maven.project.DependencyResolutionException e, Collection<org.apache.maven.project.MavenProject> reactorProjects) throws DependencyGraphBuilderException
      Throws:
      DependencyGraphBuilderException
    • getReactorDependencies

      private List<org.eclipse.aether.graph.Dependency> getReactorDependencies(Collection<org.apache.maven.project.MavenProject> reactorProjects, List<?> dependencies)
    • getDependencyArtifact

      private org.apache.maven.artifact.Artifact getDependencyArtifact(org.eclipse.aether.graph.Dependency dep)
    • buildDependencyNode

      private DependencyNode buildDependencyNode(DependencyNode parent, org.eclipse.aether.graph.DependencyNode node, org.apache.maven.artifact.Artifact artifact, org.apache.maven.artifact.resolver.filter.ArtifactFilter filter)
    • getVersionSelectedFromRange

      private String getVersionSelectedFromRange(org.eclipse.aether.version.VersionConstraint constraint)