Class FarthestConflictResolver

  • All Implemented Interfaces:
    ConflictResolver

    @Component(role=ConflictResolver.class,
               hint="farthest")
    public class FarthestConflictResolver
    extends java.lang.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
    • Field Summary

      • Fields inherited from interface org.apache.maven.repository.legacy.resolver.conflict.ConflictResolver

        ROLE
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.apache.maven.artifact.resolver.ResolutionNode resolveConflict​(org.apache.maven.artifact.resolver.ResolutionNode node1, org.apache.maven.artifact.resolver.ResolutionNode node2)
      Determines which of the specified versions of an artifact to use when there are conflicting declarations.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • FarthestConflictResolver

        public FarthestConflictResolver()
    • Method Detail

      • resolveConflict

        public org.apache.maven.artifact.resolver.ResolutionNode resolveConflict​(org.apache.maven.artifact.resolver.ResolutionNode node1,
                                                                                 org.apache.maven.artifact.resolver.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