Class WagonExcluder

java.lang.Object
org.apache.maven.plugin.internal.WagonExcluder
All Implemented Interfaces:
org.eclipse.aether.collection.DependencySelector

class WagonExcluder extends Object implements org.eclipse.aether.collection.DependencySelector
Assists in detecting wagon providers brought into the plugin class path via legacy Maven core artifacts (e.g. maven-core:2.0.6) and excluding them. A plugin should be able to explicitly declare dependencies on specific wagons for its use. However, the (old) wagons pulled in transitively via legacy Maven core artifacts are usually not intended as dependencies and more importantly screw up artifact resolution because they would get preferred over the core wagon versions. This is a hack to provide backward-compat with Maven 2 (MNG-4528, MNG-4561).
  • Field Details

    • coreArtifact

      private final boolean coreArtifact
  • Constructor Details

    • WagonExcluder

      WagonExcluder()
    • WagonExcluder

      private WagonExcluder(boolean coreArtifact)
  • Method Details

    • selectDependency

      public boolean selectDependency(org.eclipse.aether.graph.Dependency dependency)
      Specified by:
      selectDependency in interface org.eclipse.aether.collection.DependencySelector
    • deriveChildSelector

      public org.eclipse.aether.collection.DependencySelector deriveChildSelector(org.eclipse.aether.collection.DependencyCollectionContext context)
      Specified by:
      deriveChildSelector in interface org.eclipse.aether.collection.DependencySelector
    • isLegacyCoreArtifact

      private boolean isLegacyCoreArtifact(org.eclipse.aether.artifact.Artifact artifact)
    • isWagonProvider

      private boolean isWagonProvider(org.eclipse.aether.artifact.Artifact artifact)
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object