Class FarthestConflictResolver

java.lang.Object
org.apache.maven.repository.legacy.resolver.conflict.FarthestConflictResolver
All Implemented Interfaces:
ConflictResolver

@Component(role=ConflictResolver.class, hint="farthest") public class FarthestConflictResolver extends Object implements ConflictResolver
Resolves conflicting artifacts by always selecting the farthest declaration. Farthest is defined as the declaration that has the most transitive steps away from the project being built.
Since:
3.0
Author:
Mark Hobson
  • Constructor Details

    • FarthestConflictResolver

      public FarthestConflictResolver()
  • Method Details

    • resolveConflict

      public ResolutionNode resolveConflict(ResolutionNode node1, ResolutionNode node2)
      Description copied from interface: ConflictResolver
      Determines which of the specified versions of an artifact to use when there are conflicting declarations.
      Specified by:
      resolveConflict in interface ConflictResolver
      Parameters:
      node1 - the first artifact declaration
      node2 - the second artifact declaration
      Returns:
      the artifact declaration to use: node1; node2; or nullif this conflict cannot be resolved