This is an automated email from the ASF dual-hosted git repository.

sjaranowski pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-dependency-plugin.git


The following commit(s) were added to refs/heads/master by this push:
     new 82a9d60a [MDEP-940] Use Resolver API instead of m-a-t for resolving 
artifacts
82a9d60a is described below

commit 82a9d60a4c0eaadbab7b575a033727d88d5f4313
Author: Slawomir Jaranowski <[email protected]>
AuthorDate: Fri Jun 7 20:55:14 2024 +0200

    [MDEP-940] Use Resolver API instead of m-a-t for resolving artifacts
---
 .../AbstractDependencyFilterMojo.java              | 52 ++++++++++------------
 .../fromDependencies/CopyDependenciesMojo.java     | 22 ++++-----
 .../dependency/resolvers/ResolvePluginsMojo.java   | 41 ++++++++---------
 .../utils/translators/ArtifactTranslator.java      |  5 +--
 .../translators/ClassifierTypeTranslator.java      | 39 ++++------------
 .../fromDependencies/TestCopyDependenciesMojo.java |  6 +++
 .../TestCopyDependenciesMojo2.java                 |  6 +++
 .../TestUnpackDependenciesMojo.java                |  6 +++
 .../translators/TestClassifierTypeTranslator.java  | 23 +++++-----
 9 files changed, 89 insertions(+), 111 deletions(-)

diff --git 
a/src/main/java/org/apache/maven/plugins/dependency/fromDependencies/AbstractDependencyFilterMojo.java
 
b/src/main/java/org/apache/maven/plugins/dependency/fromDependencies/AbstractDependencyFilterMojo.java
index 85e39576..655458b5 100644
--- 
a/src/main/java/org/apache/maven/plugins/dependency/fromDependencies/AbstractDependencyFilterMojo.java
+++ 
b/src/main/java/org/apache/maven/plugins/dependency/fromDependencies/AbstractDependencyFilterMojo.java
@@ -24,6 +24,7 @@ import java.util.Collection;
 import java.util.LinkedHashSet;
 import java.util.Set;
 
+import org.apache.maven.RepositoryUtils;
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.handler.manager.ArtifactHandlerManager;
 import org.apache.maven.plugin.MojoExecutionException;
@@ -32,12 +33,12 @@ import org.apache.maven.plugins.annotations.Parameter;
 import org.apache.maven.plugins.dependency.AbstractDependencyMojo;
 import org.apache.maven.plugins.dependency.utils.DependencyStatusSets;
 import org.apache.maven.plugins.dependency.utils.DependencyUtil;
+import org.apache.maven.plugins.dependency.utils.ResolverUtil;
 import 
org.apache.maven.plugins.dependency.utils.translators.ArtifactTranslator;
 import 
org.apache.maven.plugins.dependency.utils.translators.ClassifierTypeTranslator;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.project.ProjectBuilder;
 import org.apache.maven.project.ProjectBuildingException;
-import org.apache.maven.project.ProjectBuildingRequest;
 import 
org.apache.maven.shared.artifact.filter.collection.ArtifactFilterException;
 import org.apache.maven.shared.artifact.filter.collection.ArtifactIdFilter;
 import org.apache.maven.shared.artifact.filter.collection.ArtifactsFilter;
@@ -47,11 +48,9 @@ import 
org.apache.maven.shared.artifact.filter.collection.GroupIdFilter;
 import 
org.apache.maven.shared.artifact.filter.collection.ProjectTransitivityFilter;
 import org.apache.maven.shared.artifact.filter.collection.ScopeFilter;
 import org.apache.maven.shared.artifact.filter.collection.TypeFilter;
-import org.apache.maven.shared.transfer.artifact.ArtifactCoordinate;
-import org.apache.maven.shared.transfer.artifact.resolve.ArtifactResolver;
-import 
org.apache.maven.shared.transfer.artifact.resolve.ArtifactResolverException;
 import 
org.apache.maven.shared.transfer.dependencies.resolve.DependencyResolver;
 import org.apache.maven.shared.transfer.repository.RepositoryManager;
+import org.eclipse.aether.resolution.ArtifactResolutionException;
 
 /**
  * Class that encapsulates the plugin parameters, and contains methods that 
handle dependency filtering
@@ -60,8 +59,9 @@ import 
org.apache.maven.shared.transfer.repository.RepositoryManager;
  * @see org.apache.maven.plugins.dependency.AbstractDependencyMojo
  */
 public abstract class AbstractDependencyFilterMojo extends 
AbstractDependencyMojo {
+
     @Component
-    private ArtifactResolver artifactResolver;
+    private ResolverUtil resolverUtil;
 
     @Component
     private DependencyResolver dependencyResolver;
@@ -364,14 +364,11 @@ public abstract class AbstractDependencyFilterMojo 
extends AbstractDependencyMoj
                 break;
             }
             try {
-                ProjectBuildingRequest buildingRequest = 
newResolveArtifactProjectBuildingRequest();
-
-                Artifact resolvedArtifact = artifactResolver
-                        .resolveArtifact(buildingRequest, 
project.getArtifact())
-                        .getArtifact();
+                org.eclipse.aether.artifact.Artifact resolvedArtifact = 
resolverUtil.resolveArtifact(
+                        RepositoryUtils.toArtifact(project.getArtifact()), 
project.getRemoteProjectRepositories());
 
-                artifacts.add(resolvedArtifact);
-            } catch (ArtifactResolverException e) {
+                artifacts.add(RepositoryUtils.toArtifact(resolvedArtifact));
+            } catch (ArtifactResolutionException e) {
                 throw new MojoExecutionException(e.getMessage(), e);
             }
         }
@@ -385,7 +382,7 @@ public abstract class AbstractDependencyFilterMojo extends 
AbstractDependencyMoj
      * @return DependencyStatusSets - Bean of TreeSets that contains 
information on the projects dependencies
      * @throws MojoExecutionException in case of an error.
      */
-    protected DependencyStatusSets 
getClassifierTranslatedDependencies(Set<Artifact> artifacts, boolean 
stopOnFailure)
+    private DependencyStatusSets 
getClassifierTranslatedDependencies(Set<Artifact> artifacts, boolean 
stopOnFailure)
             throws MojoExecutionException {
         Set<Artifact> unResolvedArtifacts = new LinkedHashSet<>();
         Set<Artifact> resolvedArtifacts = artifacts;
@@ -397,7 +394,7 @@ public abstract class AbstractDependencyFilterMojo extends 
AbstractDependencyMoj
         if (classifier != null && !classifier.isEmpty()) {
             ArtifactTranslator translator =
                     new ClassifierTypeTranslator(artifactHandlerManager, 
this.classifier, this.type);
-            Collection<ArtifactCoordinate> coordinates = 
translator.translate(artifacts, getLog());
+            Collection<org.eclipse.aether.artifact.Artifact> coordinates = 
translator.translate(artifacts, getLog());
 
             status = filterMarkedDependencies(artifacts);
 
@@ -447,29 +444,26 @@ public abstract class AbstractDependencyFilterMojo 
extends AbstractDependencyMoj
     }
 
     /**
-     * @param coordinates The set of artifact coordinates{@link 
ArtifactCoordinate}.
+     * @param artifacts The set of artifacts
      * @param stopOnFailure <code>true</code> if we should fail with exception 
if an artifact couldn't be resolved
      *            <code>false</code> otherwise.
      * @return the resolved artifacts. {@link Artifact}.
      * @throws MojoExecutionException in case of error.
      */
-    protected Set<Artifact> resolve(Set<ArtifactCoordinate> coordinates, 
boolean stopOnFailure)
+    private Set<Artifact> resolve(Set<org.eclipse.aether.artifact.Artifact> 
artifacts, boolean stopOnFailure)
             throws MojoExecutionException {
-        ProjectBuildingRequest buildingRequest = 
newResolveArtifactProjectBuildingRequest();
 
         Set<Artifact> resolvedArtifacts = new LinkedHashSet<>();
-        for (ArtifactCoordinate coordinate : coordinates) {
+        for (org.eclipse.aether.artifact.Artifact artifact : artifacts) {
             try {
-                Artifact artifact = artifactResolver
-                        .resolveArtifact(buildingRequest, coordinate)
-                        .getArtifact();
-                resolvedArtifacts.add(artifact);
-            } catch (ArtifactResolverException ex) {
+                org.eclipse.aether.artifact.Artifact resolveArtifact =
+                        resolverUtil.resolveArtifact(artifact, 
getProject().getRemoteProjectRepositories());
+                
resolvedArtifacts.add(RepositoryUtils.toArtifact(resolveArtifact));
+            } catch (ArtifactResolutionException ex) {
                 // an error occurred during resolution, log it an continue
-                getLog().debug("error resolving: " + coordinate);
-                getLog().debug(ex);
+                getLog().debug("error resolving: " + artifact, ex);
                 if (stopOnFailure) {
-                    throw new MojoExecutionException("error resolving: " + 
coordinate, ex);
+                    throw new MojoExecutionException("error resolving: " + 
artifact, ex);
                 }
             }
         }
@@ -507,10 +501,10 @@ public abstract class AbstractDependencyFilterMojo 
extends AbstractDependencyMoj
     }
 
     /**
-     * @return {@link #artifactResolver}
+     * @return {@link #resolverUtil}
      */
-    protected final ArtifactResolver getArtifactResolver() {
-        return artifactResolver;
+    protected final ResolverUtil getResolverUtil() {
+        return resolverUtil;
     }
 
     /**
diff --git 
a/src/main/java/org/apache/maven/plugins/dependency/fromDependencies/CopyDependenciesMojo.java
 
b/src/main/java/org/apache/maven/plugins/dependency/fromDependencies/CopyDependenciesMojo.java
index 48759af2..8b2d8c07 100644
--- 
a/src/main/java/org/apache/maven/plugins/dependency/fromDependencies/CopyDependenciesMojo.java
+++ 
b/src/main/java/org/apache/maven/plugins/dependency/fromDependencies/CopyDependenciesMojo.java
@@ -24,6 +24,7 @@ import java.util.Collections;
 import java.util.Map;
 import java.util.Set;
 
+import org.apache.maven.RepositoryUtils;
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
 import org.apache.maven.plugin.MojoExecutionException;
@@ -38,10 +39,10 @@ import 
org.apache.maven.plugins.dependency.utils.DependencyUtil;
 import org.apache.maven.plugins.dependency.utils.filters.DestFileFilter;
 import org.apache.maven.project.ProjectBuildingRequest;
 import org.apache.maven.shared.artifact.filter.collection.ArtifactsFilter;
-import org.apache.maven.shared.transfer.artifact.DefaultArtifactCoordinate;
 import org.apache.maven.shared.transfer.artifact.install.ArtifactInstaller;
 import 
org.apache.maven.shared.transfer.artifact.install.ArtifactInstallerException;
-import 
org.apache.maven.shared.transfer.artifact.resolve.ArtifactResolverException;
+import org.eclipse.aether.resolution.ArtifactResolutionException;
+import org.eclipse.aether.util.artifact.SubArtifact;
 
 /**
  * Goal that copies the project dependencies from the repository to a defined 
location.
@@ -289,21 +290,16 @@ public class CopyDependenciesMojo extends 
AbstractFromDependenciesMojo {
      * @return {@link Artifact}
      */
     protected Artifact getResolvedPomArtifact(Artifact artifact) {
-        DefaultArtifactCoordinate coordinate = new DefaultArtifactCoordinate();
-        coordinate.setGroupId(artifact.getGroupId());
-        coordinate.setArtifactId(artifact.getArtifactId());
-        coordinate.setVersion(artifact.getVersion());
-        coordinate.setExtension("pom");
 
         Artifact pomArtifact = null;
         // Resolve the pom artifact using repos
         try {
-            ProjectBuildingRequest buildingRequest = 
newResolveArtifactProjectBuildingRequest();
-
-            pomArtifact = getArtifactResolver()
-                    .resolveArtifact(buildingRequest, coordinate)
-                    .getArtifact();
-        } catch (ArtifactResolverException e) {
+            org.eclipse.aether.artifact.Artifact aArtifact = 
RepositoryUtils.toArtifact(artifact);
+            org.eclipse.aether.artifact.Artifact aPomArtifact = new 
SubArtifact(aArtifact, null, "pom");
+            org.eclipse.aether.artifact.Artifact resolvedPom =
+                    getResolverUtil().resolveArtifact(aPomArtifact, 
getProject().getRemoteProjectRepositories());
+            pomArtifact = RepositoryUtils.toArtifact(resolvedPom);
+        } catch (ArtifactResolutionException e) {
             getLog().info(e.getMessage());
         }
         return pomArtifact;
diff --git 
a/src/main/java/org/apache/maven/plugins/dependency/resolvers/ResolvePluginsMojo.java
 
b/src/main/java/org/apache/maven/plugins/dependency/resolvers/ResolvePluginsMojo.java
index cae06b22..4c6e91ac 100644
--- 
a/src/main/java/org/apache/maven/plugins/dependency/resolvers/ResolvePluginsMojo.java
+++ 
b/src/main/java/org/apache/maven/plugins/dependency/resolvers/ResolvePluginsMojo.java
@@ -19,10 +19,12 @@
 package org.apache.maven.plugins.dependency.resolvers;
 
 import java.io.IOException;
+import java.util.HashSet;
 import java.util.LinkedHashSet;
 import java.util.Objects;
 import java.util.Set;
 
+import org.apache.maven.RepositoryUtils;
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugins.annotations.LifecyclePhase;
@@ -43,6 +45,7 @@ import 
org.apache.maven.shared.transfer.artifact.resolve.ArtifactResult;
 import 
org.apache.maven.shared.transfer.dependencies.DefaultDependableCoordinate;
 import org.apache.maven.shared.transfer.dependencies.DependableCoordinate;
 import 
org.apache.maven.shared.transfer.dependencies.resolve.DependencyResolverException;
+import org.eclipse.aether.resolution.ArtifactResolutionException;
 
 /**
  * Goal that resolves all project plugins and reports and their dependencies.
@@ -139,7 +142,11 @@ public class ResolvePluginsMojo extends 
AbstractResolveMojo {
                     DependencyUtil.write(output, outputFile, appendOutput, 
encoding);
                 }
             }
-        } catch (IOException | ArtifactFilterException | 
ArtifactResolverException | DependencyResolverException e) {
+        } catch (IOException
+                | ArtifactFilterException
+                | ArtifactResolverException
+                | DependencyResolverException
+                | ArtifactResolutionException e) {
             throw new MojoExecutionException(e.getMessage(), e);
         }
     }
@@ -208,39 +215,27 @@ public class ResolvePluginsMojo extends 
AbstractResolveMojo {
      * @throws ArtifactFilterException in case of an error
      * @throws ArtifactResolverException in case of an error
      */
-    private Set<Artifact> resolvePluginArtifacts() throws 
ArtifactFilterException, ArtifactResolverException {
+    private Set<Artifact> resolvePluginArtifacts()
+            throws ArtifactFilterException, ArtifactResolverException, 
ArtifactResolutionException {
         final Set<Artifact> plugins = getProject().getPluginArtifacts();
         final Set<Artifact> reports = getProject().getReportArtifacts();
 
-        Set<Artifact> artifacts = new LinkedHashSet<>();
+        Set<Artifact> artifacts = new HashSet<>();
         artifacts.addAll(reports);
         artifacts.addAll(plugins);
 
         final FilterArtifacts filter = getArtifactsFilter();
         artifacts = filter.filter(artifacts);
 
-        // final ArtifactFilter filter = getPluginFilter();
+        Set<Artifact> result = new HashSet<>();
         for (final Artifact artifact : new LinkedHashSet<>(artifacts)) {
-            // if ( !filter.include( artifact ) )
-            // {
-            // final String logStr =
-            // String.format( " Plugin SKIPPED: %s", 
DependencyUtil.getFormattedFileName( artifact, false ) );
-            //
-            // if ( !silent )
-            // {
-            // this.getLog().info( logStr );
-            // }
-            //
-            // artifacts.remove( artifact );
-            // continue;
-            // }
-
-            ProjectBuildingRequest buildingRequest = 
newResolvePluginProjectBuildingRequest();
-
-            // resolve the new artifact
-            getArtifactResolver().resolveArtifact(buildingRequest, 
artifact).getArtifact();
+
+            org.eclipse.aether.artifact.Artifact resolveArtifact = 
getResolverUtil()
+                    .resolveArtifact(
+                            RepositoryUtils.toArtifact(artifact), 
getProject().getRemotePluginRepositories());
+            result.add(RepositoryUtils.toArtifact(resolveArtifact));
         }
-        return artifacts;
+        return result;
     }
 
     @Override
diff --git 
a/src/main/java/org/apache/maven/plugins/dependency/utils/translators/ArtifactTranslator.java
 
b/src/main/java/org/apache/maven/plugins/dependency/utils/translators/ArtifactTranslator.java
index a1be9dc0..12f4ed4c 100644
--- 
a/src/main/java/org/apache/maven/plugins/dependency/utils/translators/ArtifactTranslator.java
+++ 
b/src/main/java/org/apache/maven/plugins/dependency/utils/translators/ArtifactTranslator.java
@@ -22,7 +22,6 @@ import java.util.Set;
 
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.plugin.logging.Log;
-import org.apache.maven.shared.transfer.artifact.ArtifactCoordinate;
 
 /**
  * @author <a href="mailto:[email protected]";>Brian Fox</a>
@@ -31,7 +30,7 @@ public interface ArtifactTranslator {
     /**
      * @param artifacts set of {@link Artifact}s.
      * @param log {@link Log}
-     * @return {@link ArtifactCoordinate}
+     * @return set of {@link org.eclipse.aether.artifact.Artifact}
      */
-    Set<ArtifactCoordinate> translate(Set<Artifact> artifacts, Log log);
+    Set<org.eclipse.aether.artifact.Artifact> translate(Set<Artifact> 
artifacts, Log log);
 }
diff --git 
a/src/main/java/org/apache/maven/plugins/dependency/utils/translators/ClassifierTypeTranslator.java
 
b/src/main/java/org/apache/maven/plugins/dependency/utils/translators/ClassifierTypeTranslator.java
index c6f85890..3aec5907 100644
--- 
a/src/main/java/org/apache/maven/plugins/dependency/utils/translators/ClassifierTypeTranslator.java
+++ 
b/src/main/java/org/apache/maven/plugins/dependency/utils/translators/ClassifierTypeTranslator.java
@@ -21,12 +21,12 @@ package 
org.apache.maven.plugins.dependency.utils.translators;
 import java.util.LinkedHashSet;
 import java.util.Set;
 
+import org.apache.maven.RepositoryUtils;
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.artifact.handler.ArtifactHandler;
 import org.apache.maven.artifact.handler.manager.ArtifactHandlerManager;
 import org.apache.maven.plugin.logging.Log;
-import org.apache.maven.shared.transfer.artifact.ArtifactCoordinate;
-import org.apache.maven.shared.transfer.artifact.DefaultArtifactCoordinate;
+import org.eclipse.aether.util.artifact.SubArtifact;
 
 /**
  * @author <a href="mailto:[email protected]";>Brian Fox</a>
@@ -39,13 +39,13 @@ public class ClassifierTypeTranslator implements 
ArtifactTranslator {
     private String type;
 
     /**
-     * @param artifactHanderManager {@link ArtifactHandlerManager}.
+     * @param artifactHandlerManager {@link ArtifactHandlerManager}.
      * @param theClassifier The classifier to use.
      * @param theType The type.
      */
     public ClassifierTypeTranslator(
-            ArtifactHandlerManager artifactHanderManager, String 
theClassifier, String theType) {
-        this.artifactHandlerManager = artifactHanderManager;
+            ArtifactHandlerManager artifactHandlerManager, String 
theClassifier, String theType) {
+        this.artifactHandlerManager = artifactHandlerManager;
         this.classifier = theClassifier;
         this.type = theType;
     }
@@ -56,8 +56,8 @@ public class ClassifierTypeTranslator implements 
ArtifactTranslator {
      * org.apache.maven.plugin.logging.Log)
      */
     @Override
-    public Set<ArtifactCoordinate> translate(Set<Artifact> artifacts, Log log) 
{
-        Set<ArtifactCoordinate> results;
+    public Set<org.eclipse.aether.artifact.Artifact> translate(Set<Artifact> 
artifacts, Log log) {
+        Set<org.eclipse.aether.artifact.Artifact> results;
 
         log.debug("Translating Artifacts using Classifier: " + this.classifier 
+ " and Type: " + this.type);
         results = new LinkedHashSet<>();
@@ -88,30 +88,7 @@ public class ClassifierTypeTranslator implements 
ArtifactTranslator {
                 useClassifier = artifact.getClassifier();
             }
 
-            DefaultArtifactCoordinate coordinate = new 
DefaultArtifactCoordinate();
-            coordinate.setGroupId(artifact.getGroupId());
-            coordinate.setArtifactId(artifact.getArtifactId());
-            coordinate.setVersion(artifact.getVersion());
-            coordinate.setClassifier(useClassifier);
-            coordinate.setExtension(extension);
-
-            // // Create a new artifact
-            // Artifact newArtifact = factory.createArtifactWithClassifier( 
artifact.getGroupId(), artifact
-            // .getArtifactId(), artifact.getVersion(), useType, useClassifier 
);
-            //
-            // // note the new artifacts will always have the scope set to 
null. We
-            // // should
-            // // reset it here so that it will pass other filters if needed
-            // newArtifact.setScope( artifact.getScope() );
-            //
-            // if ( Artifact.SCOPE_SYSTEM.equals( newArtifact.getScope() ) )
-            // {
-            // File baseDir = repositoryManager.getLocalRepositoryBasedir( 
buildingRequest );
-            // String path = repositoryManager.getPathForLocalArtifact( 
buildingRequest, newArtifact );
-            // newArtifact.setFile( new File( baseDir, path ) );
-            // }
-
-            results.add(coordinate);
+            results.add(new SubArtifact(RepositoryUtils.toArtifact(artifact), 
useClassifier, extension));
         }
 
         return results;
diff --git 
a/src/test/java/org/apache/maven/plugins/dependency/fromDependencies/TestCopyDependenciesMojo.java
 
b/src/test/java/org/apache/maven/plugins/dependency/fromDependencies/TestCopyDependenciesMojo.java
index e2a14f16..2a2cdfc3 100644
--- 
a/src/test/java/org/apache/maven/plugins/dependency/fromDependencies/TestCopyDependenciesMojo.java
+++ 
b/src/test/java/org/apache/maven/plugins/dependency/fromDependencies/TestCopyDependenciesMojo.java
@@ -34,8 +34,10 @@ import org.apache.maven.plugin.testing.stubs.ArtifactStub;
 import org.apache.maven.plugins.dependency.AbstractDependencyMojoTestCase;
 import 
org.apache.maven.plugins.dependency.testUtils.stubs.DependencyProjectStub;
 import org.apache.maven.plugins.dependency.utils.DependencyUtil;
+import org.apache.maven.plugins.dependency.utils.ResolverUtil;
 import 
org.apache.maven.plugins.dependency.utils.markers.DefaultFileMarkerHandler;
 import org.apache.maven.project.MavenProject;
+import org.eclipse.aether.RepositorySystem;
 
 public class TestCopyDependenciesMojo extends AbstractDependencyMojoTestCase {
 
@@ -52,6 +54,10 @@ public class TestCopyDependenciesMojo extends 
AbstractDependencyMojoTestCase {
         MavenSession session = newMavenSession(project);
         getContainer().addComponent(session, MavenSession.class.getName());
 
+        RepositorySystem repositorySystem = lookup(RepositorySystem.class);
+        ResolverUtil resolverUtil = new ResolverUtil(repositorySystem, () -> 
session);
+        getContainer().addComponent(resolverUtil, 
ResolverUtil.class.getName());
+
         File testPom = new File(getBasedir(), 
"target/test-classes/unit/copy-dependencies-test/plugin-config.xml");
         mojo = (CopyDependenciesMojo) lookupMojo("copy-dependencies", testPom);
         mojo.outputDirectory = new File(this.testDir, "outputDirectory");
diff --git 
a/src/test/java/org/apache/maven/plugins/dependency/fromDependencies/TestCopyDependenciesMojo2.java
 
b/src/test/java/org/apache/maven/plugins/dependency/fromDependencies/TestCopyDependenciesMojo2.java
index 231c620a..5a299837 100644
--- 
a/src/test/java/org/apache/maven/plugins/dependency/fromDependencies/TestCopyDependenciesMojo2.java
+++ 
b/src/test/java/org/apache/maven/plugins/dependency/fromDependencies/TestCopyDependenciesMojo2.java
@@ -45,7 +45,9 @@ import org.apache.maven.plugin.LegacySupport;
 import org.apache.maven.plugins.dependency.AbstractDependencyMojoTestCase;
 import 
org.apache.maven.plugins.dependency.testUtils.stubs.DependencyProjectStub;
 import org.apache.maven.plugins.dependency.utils.DependencyUtil;
+import org.apache.maven.plugins.dependency.utils.ResolverUtil;
 import org.apache.maven.project.MavenProject;
+import org.eclipse.aether.RepositorySystem;
 
 public class TestCopyDependenciesMojo2 extends AbstractDependencyMojoTestCase {
 
@@ -60,6 +62,10 @@ public class TestCopyDependenciesMojo2 extends 
AbstractDependencyMojoTestCase {
         MavenSession session = newMavenSession(project);
         getContainer().addComponent(session, MavenSession.class.getName());
 
+        RepositorySystem repositorySystem = lookup(RepositorySystem.class);
+        ResolverUtil resolverUtil = new ResolverUtil(repositorySystem, () -> 
session);
+        getContainer().addComponent(resolverUtil, 
ResolverUtil.class.getName());
+
         File testPom = new File(getBasedir(), 
"target/test-classes/unit/copy-dependencies-test/plugin-config.xml");
         mojo = (CopyDependenciesMojo) lookupMojo("copy-dependencies", testPom);
         mojo.outputDirectory = new File(this.testDir, "outputDirectory");
diff --git 
a/src/test/java/org/apache/maven/plugins/dependency/fromDependencies/TestUnpackDependenciesMojo.java
 
b/src/test/java/org/apache/maven/plugins/dependency/fromDependencies/TestUnpackDependenciesMojo.java
index ab17a503..6ff78917 100644
--- 
a/src/test/java/org/apache/maven/plugins/dependency/fromDependencies/TestUnpackDependenciesMojo.java
+++ 
b/src/test/java/org/apache/maven/plugins/dependency/fromDependencies/TestUnpackDependenciesMojo.java
@@ -36,9 +36,11 @@ import 
org.apache.maven.plugins.dependency.AbstractDependencyMojoTestCase;
 import 
org.apache.maven.plugins.dependency.testUtils.DependencyArtifactStubFactory;
 import 
org.apache.maven.plugins.dependency.testUtils.stubs.DependencyProjectStub;
 import org.apache.maven.plugins.dependency.utils.DependencyUtil;
+import org.apache.maven.plugins.dependency.utils.ResolverUtil;
 import 
org.apache.maven.plugins.dependency.utils.markers.DefaultFileMarkerHandler;
 import org.apache.maven.project.MavenProject;
 import org.codehaus.plexus.archiver.manager.ArchiverManager;
+import org.eclipse.aether.RepositorySystem;
 
 public class TestUnpackDependenciesMojo extends AbstractDependencyMojoTestCase 
{
 
@@ -58,6 +60,10 @@ public class TestUnpackDependenciesMojo extends 
AbstractDependencyMojoTestCase {
         MavenSession session = newMavenSession(project);
         getContainer().addComponent(session, MavenSession.class.getName());
 
+        RepositorySystem repositorySystem = lookup(RepositorySystem.class);
+        ResolverUtil resolverUtil = new ResolverUtil(repositorySystem, () -> 
session);
+        getContainer().addComponent(resolverUtil, 
ResolverUtil.class.getName());
+
         File testPom = new File(getBasedir(), 
"target/test-classes/unit/unpack-dependencies-test/plugin-config.xml");
         mojo = (UnpackDependenciesMojo) lookupMojo("unpack-dependencies", 
testPom);
         mojo.outputDirectory = new File(this.testDir, "outputDirectory");
diff --git 
a/src/test/java/org/apache/maven/plugins/dependency/utils/translators/TestClassifierTypeTranslator.java
 
b/src/test/java/org/apache/maven/plugins/dependency/utils/translators/TestClassifierTypeTranslator.java
index 422b36d9..93fd632c 100644
--- 
a/src/test/java/org/apache/maven/plugins/dependency/utils/translators/TestClassifierTypeTranslator.java
+++ 
b/src/test/java/org/apache/maven/plugins/dependency/utils/translators/TestClassifierTypeTranslator.java
@@ -37,7 +37,6 @@ import org.apache.maven.plugin.testing.stubs.MavenProjectStub;
 import org.apache.maven.plugin.testing.stubs.StubArtifactRepository;
 import org.apache.maven.plugins.dependency.AbstractDependencyMojoTestCase;
 import 
org.apache.maven.plugins.dependency.testUtils.DependencyArtifactStubFactory;
-import org.apache.maven.shared.transfer.artifact.ArtifactCoordinate;
 
 /**
  * @author brianf
@@ -87,18 +86,18 @@ public class TestClassifierTypeTranslator extends 
AbstractDependencyMojoTestCase
         String type = "zip";
 
         ArtifactTranslator at = new 
ClassifierTypeTranslator(artifactHandlerManager, classifier, type);
-        Set<ArtifactCoordinate> results = at.translate(artifacts, log);
+        Set<org.eclipse.aether.artifact.Artifact> results = 
at.translate(artifacts, log);
 
         for (Artifact artifact : artifacts) {
-            Iterator<ArtifactCoordinate> resultIter = results.iterator();
+            Iterator<org.eclipse.aether.artifact.Artifact> resultIter = 
results.iterator();
             boolean found = false;
             while (resultIter.hasNext()) {
-                ArtifactCoordinate translatedArtifact = resultIter.next();
+                org.eclipse.aether.artifact.Artifact translatedArtifact = 
resultIter.next();
                 if 
(artifact.getArtifactId().equals(translatedArtifact.getArtifactId())
                         && 
artifact.getGroupId().equals(translatedArtifact.getGroupId())
                 /* && 
artifact.getScope().equals(translatedArtifact.getScope()) */ ) {
-                    // classifier is null, should be the same as the artifact
-                    assertEquals(artifact.getClassifier(), 
translatedArtifact.getClassifier());
+                    // classifier is always empty for Resolver sub artifact
+                    assertEquals("", translatedArtifact.getClassifier());
                     assertEquals(type, translatedArtifact.getExtension());
 
                     found = true;
@@ -121,13 +120,13 @@ public class TestClassifierTypeTranslator extends 
AbstractDependencyMojoTestCase
         String classifier = "jdk5";
 
         ArtifactTranslator at = new 
ClassifierTypeTranslator(artifactHandlerManager, classifier, type);
-        Set<ArtifactCoordinate> results = at.translate(artifacts, log);
+        Set<org.eclipse.aether.artifact.Artifact> results = 
at.translate(artifacts, log);
 
         for (Artifact artifact : artifacts) {
-            Iterator<ArtifactCoordinate> resultIter = results.iterator();
+            Iterator<org.eclipse.aether.artifact.Artifact> resultIter = 
results.iterator();
             boolean found = false;
             while (!found && resultIter.hasNext()) {
-                ArtifactCoordinate translatedArtifact = resultIter.next();
+                org.eclipse.aether.artifact.Artifact translatedArtifact = 
resultIter.next();
                 if (artifact.getArtifactId() == 
translatedArtifact.getArtifactId()
                         && artifact.getGroupId() == 
translatedArtifact.getGroupId()
                 /* && artifact.getScope() == translatedArtifact.getScope() */ 
) {
@@ -147,13 +146,13 @@ public class TestClassifierTypeTranslator extends 
AbstractDependencyMojoTestCase
         String classifier = "jdk14";
         String type = "sources";
         ArtifactTranslator at = new 
ClassifierTypeTranslator(artifactHandlerManager, classifier, type);
-        Set<ArtifactCoordinate> results = at.translate(artifacts, log);
+        Set<org.eclipse.aether.artifact.Artifact> results = 
at.translate(artifacts, log);
 
         for (Artifact artifact : artifacts) {
-            Iterator<ArtifactCoordinate> resultIter = results.iterator();
+            Iterator<org.eclipse.aether.artifact.Artifact> resultIter = 
results.iterator();
             boolean found = false;
             while (!found && resultIter.hasNext()) {
-                ArtifactCoordinate translatedArtifact = resultIter.next();
+                org.eclipse.aether.artifact.Artifact translatedArtifact = 
resultIter.next();
                 if (artifact.getArtifactId() == 
translatedArtifact.getArtifactId()
                         && artifact.getGroupId() == 
translatedArtifact.getGroupId()) {
                     assertEquals(translatedArtifact.getClassifier(), 
classifier);

Reply via email to