Class NearestVersionSelector
java.lang.Object
org.eclipse.aether.util.graph.transformer.ConflictResolver.VersionSelector
org.eclipse.aether.util.graph.transformer.NearestVersionSelector
A version selector for use with
ConflictResolver that resolves version conflicts using a nearest-wins
strategy. If there is no single node that satisfies all encountered version ranges, the selector will fail.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static final class -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidprivate booleanisAcceptable(NearestVersionSelector.ConflictGroup group, Version version) private booleanvoidDetermines the winning node among conflicting dependencies.Methods inherited from class org.eclipse.aether.util.graph.transformer.ConflictResolver.VersionSelector
getInstance
-
Constructor Details
-
NearestVersionSelector
public NearestVersionSelector()Creates a new instance of this version selector.
-
-
Method Details
-
selectVersion
Description copied from class:ConflictResolver.VersionSelectorDetermines the winning node among conflicting dependencies. Implementations will usually iterateConflictResolver.ConflictContext.getItems(), inspectConflictResolver.ConflictItem.getNode()and eventually callConflictResolver.ConflictContext.setWinner(ConflictResolver.ConflictItem)to deliver the winner. Failure to select a winner will automatically fail the entire conflict resolution.- Specified by:
selectVersionin classConflictResolver.VersionSelector- Parameters:
context- The conflict context, must not benull.- Throws:
RepositoryException- If the version selection failed.
-
backtrack
private void backtrack(NearestVersionSelector.ConflictGroup group, ConflictResolver.ConflictContext context) throws UnsolvableVersionConflictException -
isAcceptable
-
isNearer
-
newFailure
-