Author: rfscholte Date: Sat Jun 27 20:11:03 2015 New Revision: 1687960 URL: http://svn.apache.org/r1687960 Log: [MDEP-494] Remove/replace Maven2 specific code 'copy-dependencies' goal using ArtifactResolver from maven-artifact-transfer
Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/fromDependencies/CopyDependenciesMojo.java maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestCopyDependenciesMojo.java maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestCopyDependenciesMojo2.java Modified: maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/fromDependencies/CopyDependenciesMojo.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/fromDependencies/CopyDependenciesMojo.java?rev=1687960&r1=1687959&r2=1687960&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/fromDependencies/CopyDependenciesMojo.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/main/java/org/apache/maven/plugin/dependency/fromDependencies/CopyDependenciesMojo.java Sat Jun 27 20:11:03 2015 @@ -34,7 +34,10 @@ import org.apache.maven.plugins.annotati import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; import org.apache.maven.plugins.annotations.ResolutionScope; +import org.apache.maven.project.DefaultProjectBuildingRequest; +import org.apache.maven.project.ProjectBuildingRequest; import org.apache.maven.shared.artifact.filter.collection.ArtifactsFilter; +import org.apache.maven.shared.artifact.resolve.ArtifactResolverException; import java.io.File; import java.net.MalformedURLException; @@ -310,9 +313,16 @@ public class CopyDependenciesMojo // Resolve the pom artifact using repos try { - this.resolver.resolve( pomArtifact, this.remoteRepos, this.getLocal() ); + ProjectBuildingRequest buildingRequest = + new DefaultProjectBuildingRequest( session.getProjectBuildingRequest() ); + + buildingRequest.setLocalRepository( this.getLocal() ); + + buildingRequest.setRemoteRepositories( this.remoteRepos ); + + pomArtifact = getArtifactResolver().resolveArtifact( buildingRequest, pomArtifact ); } - catch ( Exception e ) + catch ( ArtifactResolverException e ) { getLog().info( e.getMessage() ); } Modified: maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestCopyDependenciesMojo.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestCopyDependenciesMojo.java?rev=1687960&r1=1687959&r2=1687960&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestCopyDependenciesMojo.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestCopyDependenciesMojo.java Sat Jun 27 20:11:03 2015 @@ -794,6 +794,7 @@ public class TestCopyDependenciesMojo Set<Artifact> set = new HashSet<Artifact>(); set.add( stubFactory.createArtifact( "org.apache.maven", "maven-artifact", "2.0.7", Artifact.SCOPE_COMPILE ) ); + stubFactory.createArtifact( "org.apache.maven", "maven-artifact", "2.0.7", Artifact.SCOPE_COMPILE, "pom", null ); mojo.getProject().setArtifacts( set ); mojo.execute(); @@ -802,7 +803,7 @@ public class TestCopyDependenciesMojo { String fileName = DependencyUtil.getFormattedFileName( artifact, false ); File file = new File( mojo.outputDirectory, fileName.substring( 0, fileName.length() - 4 ) + ".pom" ); - assertTrue( file.exists() ); + assertTrue( file + " doesn't exist", file.exists() ); } } Modified: maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestCopyDependenciesMojo2.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestCopyDependenciesMojo2.java?rev=1687960&r1=1687959&r2=1687960&view=diff ============================================================================== --- maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestCopyDependenciesMojo2.java (original) +++ maven/plugins/trunk/maven-dependency-plugin/src/test/java/org/apache/maven/plugin/dependency/fromDependencies/TestCopyDependenciesMojo2.java Sat Jun 27 20:11:03 2015 @@ -34,12 +34,12 @@ import org.apache.maven.artifact.reposit import org.apache.maven.artifact.repository.metadata.SnapshotArtifactRepositoryMetadata; import org.apache.maven.artifact.resolver.filter.ScopeArtifactFilter; import org.apache.maven.artifact.versioning.VersionRange; +import org.apache.maven.execution.MavenSession; import org.apache.maven.plugin.LegacySupport; import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.dependency.AbstractDependencyMojoTestCase; import org.apache.maven.plugin.dependency.utils.DependencyUtil; import org.apache.maven.plugin.dependency.utils.markers.DefaultFileMarkerHandler; -import org.apache.maven.plugin.testing.stubs.MavenProjectStub; import org.apache.maven.project.MavenProject; import org.codehaus.plexus.util.StringUtils; import org.sonatype.aether.impl.internal.SimpleLocalRepositoryManager; @@ -75,7 +75,10 @@ public class TestCopyDependenciesMojo2 mojo.markersDirectory = new File( this.testDir, "markers" ); LegacySupport legacySupport = lookup( LegacySupport.class ); - legacySupport.setSession( newMavenSession( new MavenProjectStub() ) ); + MavenSession session = newMavenSession( project ); + setVariableValueToObject( mojo, "session", session ); + + legacySupport.setSession( session ); DefaultRepositorySystemSession repoSession = (DefaultRepositorySystemSession) legacySupport.getRepositorySession(); repoSession.setLocalRepositoryManager( new SimpleLocalRepositoryManager( testDir.getAbsolutePath() ) );