Class DefaultDependencyManager

  • All Implemented Interfaces:
    org.eclipse.aether.collection.DependencyManager

    public final class DefaultDependencyManager
    extends AbstractDependencyManager
    A dependency manager that applies management at all levels with aggressive transitive behavior.

    Overview

    This manager provides the most aggressive dependency management approach, applying management rules at every level of the dependency graph. Unlike other managers, it starts applying management from the very first level (depth=0) and continues indefinitely.

    Key Characteristics

    • Aggressive Application: deriveUntil=Integer.MAX_VALUE, applyFrom=0
    • First Level Management: Applies management even at the root level
    • ModelBuilder Interference: Ignores and overrides ModelBuilder's work
    • Complete Transitivity: Manages dependencies at all depths

    When NOT to Use

    ⚠️ Warning: This manager is not recommended for Maven or Maven-like use cases because it interferes with ModelBuilder, potentially rewriting models that ModelBuilder has already processed correctly. This can lead to unexpected dependency resolution behavior.

    When to Use

    Consider this manager only for non-Maven scenarios where you need complete control over dependency management at all levels and are not using Maven's ModelBuilder.

    Comparison with Other Managers

    Since:
    1.4.0
    Author:
    Christian Schulte
    See Also:
    ClassicDependencyManager, TransitiveDependencyManager