Interface DependencyCycle

All Known Implementing Classes:
DefaultDependencyCycle

public interface DependencyCycle
A cycle within a dependency graph, that is a sequence of dependencies d_1, d_2, ..., d_n where d_1 and d_n have the same versionless coordinates. In more practical terms, a cycle occurs when a project directly or indirectly depends on its own output artifact.
Restriction:
This interface is not intended to be extended by clients.
Restriction:
This interface is not intended to be implemented by clients.
  • Method Details

    • getPrecedingDependencies

      Gets the dependencies that lead to the first dependency on the cycle, starting from the root of the dependency graph.
      Returns:
      The (read-only) sequence of dependencies that precedes the cycle in the graph, potentially empty but never null.
    • getCyclicDependencies

      Gets the dependencies that actually form the cycle. For example, a -> b -> c -> a, i.e. the last dependency in this sequence duplicates the first element and closes the cycle. Hence the length of the cycle is the size of the returned sequence minus 1.
      Returns:
      The (read-only) sequence of dependencies that forms the cycle, never null.