Class ProjectSorter


  • public class ProjectSorter
    extends Object
    ProjectSorter
    • Constructor Detail

      • ProjectSorter

        public ProjectSorter​(Collection<MavenProject> projects)
                      throws org.codehaus.plexus.util.dag.CycleDetectedException,
                             DuplicateProjectException
        Sort a list of projects.
        • collect all the vertices for the projects that we want to build.
        • iterate through the deps of each project and if that dep is within the set of projects we want to build then add an edge, otherwise throw the edge away because that dependency is not within the set of projects we are trying to build. we assume a closed set.
        • do a topo sort on the graph that remains.
        Throws:
        DuplicateProjectException - if any projects are duplicated by id
        org.codehaus.plexus.util.dag.CycleDetectedException