From b5deb5e68fb06b6e5727f5ec72a28f396169fa4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotrek=20=C5=BBygie=C5=82o?= Date: Fri, 1 May 2020 21:29:31 +0200 Subject: [PATCH 01/10] UTs for AbstractDependencyMojo (artifacts) --- .../AbstractDependencyMojoTest.java | 95 +++++++++++++++++++ 1 file changed, 95 insertions(+) create mode 100644 src/test/java/org/apache/maven/plugins/dependency/AbstractDependencyMojoTest.java diff --git a/src/test/java/org/apache/maven/plugins/dependency/AbstractDependencyMojoTest.java b/src/test/java/org/apache/maven/plugins/dependency/AbstractDependencyMojoTest.java new file mode 100644 index 000000000..3959ee7c8 --- /dev/null +++ b/src/test/java/org/apache/maven/plugins/dependency/AbstractDependencyMojoTest.java @@ -0,0 +1,95 @@ +package org.apache.maven.plugins.dependency; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import junit.framework.TestCase; +import org.apache.maven.artifact.repository.ArtifactRepository; +import org.apache.maven.execution.MavenSession; +import org.apache.maven.project.ProjectBuildingRequest; + +import java.lang.reflect.Field; +import java.util.ArrayList; +import java.util.List; + +import static org.apache.maven.plugins.dependency.AbstractDependencyMojoTest.ConcreteDependencyMojo.createConcreteDependencyMojoWithArtifactRepositories; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + +public class AbstractDependencyMojoTest extends TestCase { + + private MavenSession session = mock(MavenSession.class); + + private ProjectBuildingRequest buildingRequest = mock(ProjectBuildingRequest.class); + + private ArrayList artifactRepos = new ArrayList<>(); + + static class ConcreteDependencyMojo extends AbstractDependencyMojo { + static ConcreteDependencyMojo createConcreteDependencyMojoWithArtifactRepositories(MavenSession mavenSession, List artifactRepos) throws NoSuchFieldException, IllegalAccessException { + ConcreteDependencyMojo cdm = new ConcreteDependencyMojo(); + cdm.session = mavenSession; + + Field par = AbstractDependencyMojo.class.getDeclaredField("remoteRepositories"); + par.setAccessible(true); + par.set(cdm, artifactRepos); + + return cdm; + } + + @Override + protected void doExecute() { + } + } + + @Override + protected void setUp() throws Exception { + artifactRepos.add(newRepositoryWithId("#ar-central")); + artifactRepos.add(newRepositoryWithId("#ar-snapshots")); + artifactRepos.add(newRepositoryWithId("#ar-staging")); + + when(session.getProjectBuildingRequest()).thenReturn(buildingRequest); + } + + private static ArtifactRepository newRepositoryWithId(String id) + { + ArtifactRepository repo = mock(ArtifactRepository.class); + when(repo.getId()).thenReturn(id); + return repo; + } + + public void testNewResolveArtifactProjectBuildingRequestRemoteRepositoriesSize() throws NoSuchFieldException, IllegalAccessException { + AbstractDependencyMojo mojo = createConcreteDependencyMojoWithArtifactRepositories(session, artifactRepos); + + ProjectBuildingRequest pbr = mojo.newResolveArtifactProjectBuildingRequest(); + List rrepos = pbr.getRemoteRepositories(); + + assertEquals(3, rrepos.size()); + } + + public void testNewResolveArtifactProjectBuildingRequestRemoteRepositoriesContents() throws NoSuchFieldException, IllegalAccessException { + AbstractDependencyMojo mojo = createConcreteDependencyMojoWithArtifactRepositories(session, artifactRepos); + + ProjectBuildingRequest pbr = mojo.newResolveArtifactProjectBuildingRequest(); + List rrepos = pbr.getRemoteRepositories(); + + assertEquals("#ar-central", rrepos.get(0).getId()); + assertEquals("#ar-snapshots", rrepos.get(1).getId()); + assertEquals("#ar-staging", rrepos.get(2).getId()); + } +} \ No newline at end of file From 87fe864bfd842bba5459e114099ee760f4025ab5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotrek=20=C5=BBygie=C5=82o?= Date: Fri, 1 May 2020 21:29:42 +0200 Subject: [PATCH 02/10] Debug-log used repositories --- .../dependency/resolvers/GoOfflineMojo.java | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/apache/maven/plugins/dependency/resolvers/GoOfflineMojo.java b/src/main/java/org/apache/maven/plugins/dependency/resolvers/GoOfflineMojo.java index b12dd6f58..6b7613a56 100644 --- a/src/main/java/org/apache/maven/plugins/dependency/resolvers/GoOfflineMojo.java +++ b/src/main/java/org/apache/maven/plugins/dependency/resolvers/GoOfflineMojo.java @@ -20,6 +20,7 @@ */ import org.apache.maven.artifact.Artifact; +import org.apache.maven.artifact.repository.ArtifactRepository; import org.apache.maven.model.Dependency; import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugins.dependency.utils.DependencyUtil; @@ -38,6 +39,8 @@ import java.util.LinkedHashSet; import java.util.Set; +import static java.lang.String.format; + /** * Goal that resolves all project dependencies, including plugins and reports and their dependencies. * @@ -109,17 +112,24 @@ protected Set resolveDependencyArtifacts() dependableCoordinates.add( createDependendableCoordinateFromDependency( dependency ) ); } - return resolveDependableCoordinate( buildingRequest, dependableCoordinates ); + return resolveDependableCoordinate( buildingRequest, dependableCoordinates, "dependencies" ); } private Set resolveDependableCoordinate( final ProjectBuildingRequest buildingRequest, - final Collection dependableCoordinates ) + final Collection dependableCoordinates, + final String type ) throws DependencyResolverException { final TransformableFilter filter = getTransformableFilter(); final Set results = new HashSet<>(); + this.getLog().debug( String.format( "Resolving %s with following repositories:", type ) ); + for ( ArtifactRepository repo : buildingRequest.getRemoteRepositories() ) + { + getLog().debug( format( "#%s (%s)", repo.getId(), repo.getUrl() ) ); + } + for ( DependableCoordinate dependableCoordinate : dependableCoordinates ) { final Iterable artifactResults = getDependencyResolver().resolveDependencies( @@ -172,7 +182,7 @@ protected Set resolvePluginArtifacts() dependableCoordinates.add( createDependendableCoordinateFromArtifact( artifact ) ); } - return resolveDependableCoordinate( buildingRequest, dependableCoordinates ); + return resolveDependableCoordinate( buildingRequest, dependableCoordinates, "plugins" ); } private DependableCoordinate createDependendableCoordinateFromArtifact( final Artifact artifact ) From d15685600e30ca5e6858b636ab14bad1ad1808f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotrek=20=C5=BBygie=C5=82o?= Date: Fri, 1 May 2020 21:29:50 +0200 Subject: [PATCH 03/10] Introduce new parameter for separate plugin repositories --- .../maven/plugins/dependency/AbstractDependencyMojo.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/main/java/org/apache/maven/plugins/dependency/AbstractDependencyMojo.java b/src/main/java/org/apache/maven/plugins/dependency/AbstractDependencyMojo.java index 2f7a2ce2b..e3e4d7b23 100644 --- a/src/main/java/org/apache/maven/plugins/dependency/AbstractDependencyMojo.java +++ b/src/main/java/org/apache/maven/plugins/dependency/AbstractDependencyMojo.java @@ -90,6 +90,12 @@ public abstract class AbstractDependencyMojo @Parameter( defaultValue = "${project.remoteArtifactRepositories}", readonly = true, required = true ) private List remoteRepositories; + /** + * Remote repositories which will be searched for plugins. + */ + @Parameter( defaultValue = "${project.pluginArtifactRepositories}", readonly = true, required = true ) + private List remotePluginRepositories; + /** * Contains the full list of projects in the reactor. */ From 6ae408c730392ab5f38f80666fbf9457036cda73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotrek=20=C5=BBygie=C5=82o?= Date: Fri, 1 May 2020 21:29:56 +0200 Subject: [PATCH 04/10] UTs for AbstractDependencyMojo (plugins) --- .../AbstractDependencyMojoTest.java | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/src/test/java/org/apache/maven/plugins/dependency/AbstractDependencyMojoTest.java b/src/test/java/org/apache/maven/plugins/dependency/AbstractDependencyMojoTest.java index 3959ee7c8..c6313cca2 100644 --- a/src/test/java/org/apache/maven/plugins/dependency/AbstractDependencyMojoTest.java +++ b/src/test/java/org/apache/maven/plugins/dependency/AbstractDependencyMojoTest.java @@ -29,6 +29,7 @@ import java.util.List; import static org.apache.maven.plugins.dependency.AbstractDependencyMojoTest.ConcreteDependencyMojo.createConcreteDependencyMojoWithArtifactRepositories; +import static org.apache.maven.plugins.dependency.AbstractDependencyMojoTest.ConcreteDependencyMojo.createConcreteDependencyMojoWithPluginRepositories; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; @@ -40,6 +41,8 @@ public class AbstractDependencyMojoTest extends TestCase { private ArrayList artifactRepos = new ArrayList<>(); + private ArrayList pluginRepos = new ArrayList<>(); + static class ConcreteDependencyMojo extends AbstractDependencyMojo { static ConcreteDependencyMojo createConcreteDependencyMojoWithArtifactRepositories(MavenSession mavenSession, List artifactRepos) throws NoSuchFieldException, IllegalAccessException { ConcreteDependencyMojo cdm = new ConcreteDependencyMojo(); @@ -52,6 +55,17 @@ static ConcreteDependencyMojo createConcreteDependencyMojoWithArtifactRepositori return cdm; } + static ConcreteDependencyMojo createConcreteDependencyMojoWithPluginRepositories(MavenSession mavenSession, List pluginRepos) throws NoSuchFieldException, IllegalAccessException { + ConcreteDependencyMojo cdm = new ConcreteDependencyMojo(); + cdm.session = mavenSession; + + Field par = AbstractDependencyMojo.class.getDeclaredField("remotePluginRepositories"); + par.setAccessible(true); + par.set(cdm, pluginRepos); + + return cdm; + } + @Override protected void doExecute() { } @@ -59,6 +73,9 @@ protected void doExecute() { @Override protected void setUp() throws Exception { + pluginRepos.add(newRepositoryWithId("#pr-central")); + pluginRepos.add(newRepositoryWithId("#pr-plugins")); + artifactRepos.add(newRepositoryWithId("#ar-central")); artifactRepos.add(newRepositoryWithId("#ar-snapshots")); artifactRepos.add(newRepositoryWithId("#ar-staging")); @@ -92,4 +109,23 @@ public void testNewResolveArtifactProjectBuildingRequestRemoteRepositoriesConten assertEquals("#ar-snapshots", rrepos.get(1).getId()); assertEquals("#ar-staging", rrepos.get(2).getId()); } + + public void testNewResolvePluginProjectBuildingRequestRemoteRepositoriesSize() throws NoSuchFieldException, IllegalAccessException { + AbstractDependencyMojo mojo = createConcreteDependencyMojoWithPluginRepositories(session, pluginRepos); + + ProjectBuildingRequest pbr = mojo.newResolvePluginProjectBuildingRequest(); + List rrepos = pbr.getRemoteRepositories(); + + assertEquals(2, rrepos.size()); + } + + public void testNewResolvePluginProjectBuildingRequestRemoteRepositoriesContents() throws NoSuchFieldException, IllegalAccessException { + AbstractDependencyMojo mojo = createConcreteDependencyMojoWithPluginRepositories(session, pluginRepos); + + ProjectBuildingRequest pbr = mojo.newResolvePluginProjectBuildingRequest(); + List rrepos = pbr.getRemoteRepositories(); + + assertEquals("#pr-central", rrepos.get(0).getId()); + assertEquals("#pr-plugins", rrepos.get(1).getId()); + } } \ No newline at end of file From ff6fbc4230bf6a75e972ba1985f1fcbbfff59e2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotrek=20=C5=BBygie=C5=82o?= Date: Fri, 1 May 2020 21:30:03 +0200 Subject: [PATCH 05/10] Create PBR for resolving plugins --- .../plugins/dependency/AbstractDependencyMojo.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/main/java/org/apache/maven/plugins/dependency/AbstractDependencyMojo.java b/src/main/java/org/apache/maven/plugins/dependency/AbstractDependencyMojo.java index e3e4d7b23..04d7dbd03 100644 --- a/src/main/java/org/apache/maven/plugins/dependency/AbstractDependencyMojo.java +++ b/src/main/java/org/apache/maven/plugins/dependency/AbstractDependencyMojo.java @@ -360,6 +360,20 @@ public ProjectBuildingRequest newResolveArtifactProjectBuildingRequest() return buildingRequest; } + /** + * @return Returns a new ProjectBuildingRequest populated from the current session and the current project remote + * repositories, used to resolve plugins. + */ + protected ProjectBuildingRequest newResolvePluginProjectBuildingRequest() + { + ProjectBuildingRequest buildingRequest = + new DefaultProjectBuildingRequest( session.getProjectBuildingRequest() ); + + buildingRequest.setRemoteRepositories( remotePluginRepositories ); + + return buildingRequest; + } + /** * @return Returns the project. */ From 35ad704820428f8b043efe7989cdb48e2520fe3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotrek=20=C5=BBygie=C5=82o?= Date: Fri, 1 May 2020 21:30:11 +0200 Subject: [PATCH 06/10] Extract method --- .../plugins/dependency/AbstractDependencyMojo.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/apache/maven/plugins/dependency/AbstractDependencyMojo.java b/src/main/java/org/apache/maven/plugins/dependency/AbstractDependencyMojo.java index 04d7dbd03..07df9f631 100644 --- a/src/main/java/org/apache/maven/plugins/dependency/AbstractDependencyMojo.java +++ b/src/main/java/org/apache/maven/plugins/dependency/AbstractDependencyMojo.java @@ -352,12 +352,7 @@ private void silenceUnarchiver( UnArchiver unArchiver ) */ public ProjectBuildingRequest newResolveArtifactProjectBuildingRequest() { - ProjectBuildingRequest buildingRequest = - new DefaultProjectBuildingRequest( session.getProjectBuildingRequest() ); - - buildingRequest.setRemoteRepositories( remoteRepositories ); - - return buildingRequest; + return newProjectBuildingRequest( remoteRepositories ); } /** @@ -365,11 +360,16 @@ public ProjectBuildingRequest newResolveArtifactProjectBuildingRequest() * repositories, used to resolve plugins. */ protected ProjectBuildingRequest newResolvePluginProjectBuildingRequest() + { + return newProjectBuildingRequest( remotePluginRepositories ); + } + + private ProjectBuildingRequest newProjectBuildingRequest( List repositories ) { ProjectBuildingRequest buildingRequest = new DefaultProjectBuildingRequest( session.getProjectBuildingRequest() ); - buildingRequest.setRemoteRepositories( remotePluginRepositories ); + buildingRequest.setRemoteRepositories( repositories ); return buildingRequest; } From 5e7542b640222f3152a0d9403847775673852fc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotrek=20=C5=BBygie=C5=82o?= Date: Fri, 1 May 2020 21:30:25 +0200 Subject: [PATCH 07/10] [MDEP-680] Use proper remote repositories to resolve plugins/dependencies --- .../plugins/dependency/resolvers/GoOfflineMojo.java | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/apache/maven/plugins/dependency/resolvers/GoOfflineMojo.java b/src/main/java/org/apache/maven/plugins/dependency/resolvers/GoOfflineMojo.java index 6b7613a56..9adef0ce6 100644 --- a/src/main/java/org/apache/maven/plugins/dependency/resolvers/GoOfflineMojo.java +++ b/src/main/java/org/apache/maven/plugins/dependency/resolvers/GoOfflineMojo.java @@ -25,7 +25,6 @@ import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugins.dependency.utils.DependencyUtil; import org.apache.maven.plugins.annotations.Mojo; -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.filter.resolve.TransformableFilter; @@ -52,7 +51,6 @@ public class GoOfflineMojo extends AbstractResolveMojo { - /** * Main entry into mojo. Gets the list of dependencies, resolves all that are not in the Reactor, and iterates * through displaying the resolved versions. @@ -104,8 +102,8 @@ protected Set resolveDependencyArtifacts() { final Collection dependencies = getProject().getDependencies(); final Set dependableCoordinates = new HashSet<>(); - final ProjectBuildingRequest buildingRequest = - new DefaultProjectBuildingRequest( session.getProjectBuildingRequest() ); + + final ProjectBuildingRequest buildingRequest = newResolveArtifactProjectBuildingRequest(); for ( Dependency dependency : dependencies ) { @@ -174,8 +172,7 @@ protected Set resolvePluginArtifacts() artifacts.addAll( reports ); artifacts.addAll( plugins ); - final ProjectBuildingRequest buildingRequest = - new DefaultProjectBuildingRequest( session.getProjectBuildingRequest() ); + final ProjectBuildingRequest buildingRequest = newResolvePluginProjectBuildingRequest(); for ( Artifact artifact : artifacts ) { From 6a944ca2327aa0f01c22927da0f1a53bc6726d8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotrek=20=C5=BBygie=C5=82o?= Date: Fri, 1 May 2020 21:30:31 +0200 Subject: [PATCH 08/10] Refactor: use inherited method --- .../dependency/resolvers/ResolvePluginsMojo.java | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) 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 33f774bac..0f45e90f3 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 @@ -21,17 +21,13 @@ import java.io.IOException; import java.util.LinkedHashSet; -import java.util.List; import java.util.Set; import org.apache.maven.artifact.Artifact; -import org.apache.maven.artifact.repository.ArtifactRepository; import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugins.annotations.LifecyclePhase; import org.apache.maven.plugins.annotations.Mojo; -import org.apache.maven.plugins.annotations.Parameter; import org.apache.maven.plugins.dependency.utils.DependencyUtil; -import org.apache.maven.project.DefaultProjectBuildingRequest; import org.apache.maven.project.ProjectBuildingRequest; import org.apache.maven.shared.artifact.filter.collection.ArtifactFilterException; import org.apache.maven.shared.artifact.filter.collection.ArtifactsFilter; @@ -51,12 +47,6 @@ public class ResolvePluginsMojo extends AbstractResolveMojo { - /** - * Remote repositories which will be searched for plugins. - */ - @Parameter( defaultValue = "${project.pluginArtifactRepositories}", readonly = true, required = true ) - private List remotePluginRepositories; - /** * Main entry into mojo. Gets the list of dependencies and iterates through displaying the resolved version. * @@ -194,10 +184,7 @@ protected Set resolvePluginArtifacts() // continue; // } - ProjectBuildingRequest buildingRequest = - new DefaultProjectBuildingRequest( session.getProjectBuildingRequest() ); - - buildingRequest.setRemoteRepositories( this.remotePluginRepositories ); + ProjectBuildingRequest buildingRequest = newResolvePluginProjectBuildingRequest(); // resolve the new artifact resolvedArtifacts.add( getArtifactResolver().resolveArtifact( buildingRequest, artifact ).getArtifact() ); From a33d229a572604ac68b1bf2feb52bf0a00c5faee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotrek=20=C5=BBygie=C5=82o?= Date: Sat, 30 May 2020 15:25:58 +0200 Subject: [PATCH 09/10] Formatting only --- .../AbstractDependencyMojoTest.java | 95 +++++++++++-------- 1 file changed, 56 insertions(+), 39 deletions(-) diff --git a/src/test/java/org/apache/maven/plugins/dependency/AbstractDependencyMojoTest.java b/src/test/java/org/apache/maven/plugins/dependency/AbstractDependencyMojoTest.java index c6313cca2..97f54ad84 100644 --- a/src/test/java/org/apache/maven/plugins/dependency/AbstractDependencyMojoTest.java +++ b/src/test/java/org/apache/maven/plugins/dependency/AbstractDependencyMojoTest.java @@ -33,99 +33,116 @@ import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; -public class AbstractDependencyMojoTest extends TestCase { +public class AbstractDependencyMojoTest extends TestCase +{ + private MavenSession session = mock( MavenSession.class ); - private MavenSession session = mock(MavenSession.class); - - private ProjectBuildingRequest buildingRequest = mock(ProjectBuildingRequest.class); + private ProjectBuildingRequest buildingRequest = mock( ProjectBuildingRequest.class ); private ArrayList artifactRepos = new ArrayList<>(); private ArrayList pluginRepos = new ArrayList<>(); - static class ConcreteDependencyMojo extends AbstractDependencyMojo { - static ConcreteDependencyMojo createConcreteDependencyMojoWithArtifactRepositories(MavenSession mavenSession, List artifactRepos) throws NoSuchFieldException, IllegalAccessException { + static class ConcreteDependencyMojo extends AbstractDependencyMojo + { + static ConcreteDependencyMojo createConcreteDependencyMojoWithArtifactRepositories( + MavenSession mavenSession, List artifactRepos ) + throws NoSuchFieldException, IllegalAccessException + { ConcreteDependencyMojo cdm = new ConcreteDependencyMojo(); cdm.session = mavenSession; - Field par = AbstractDependencyMojo.class.getDeclaredField("remoteRepositories"); - par.setAccessible(true); - par.set(cdm, artifactRepos); + Field par = AbstractDependencyMojo.class.getDeclaredField( "remoteRepositories" ); + par.setAccessible( true ); + par.set( cdm, artifactRepos ); return cdm; } - static ConcreteDependencyMojo createConcreteDependencyMojoWithPluginRepositories(MavenSession mavenSession, List pluginRepos) throws NoSuchFieldException, IllegalAccessException { + static ConcreteDependencyMojo createConcreteDependencyMojoWithPluginRepositories( + MavenSession mavenSession, List pluginRepos ) + throws NoSuchFieldException, IllegalAccessException + { ConcreteDependencyMojo cdm = new ConcreteDependencyMojo(); cdm.session = mavenSession; - Field par = AbstractDependencyMojo.class.getDeclaredField("remotePluginRepositories"); - par.setAccessible(true); - par.set(cdm, pluginRepos); + Field par = AbstractDependencyMojo.class.getDeclaredField( "remotePluginRepositories" ); + par.setAccessible( true ); + par.set( cdm, pluginRepos ); return cdm; } @Override - protected void doExecute() { + protected void doExecute() + { } } @Override - protected void setUp() throws Exception { - pluginRepos.add(newRepositoryWithId("#pr-central")); - pluginRepos.add(newRepositoryWithId("#pr-plugins")); + protected void setUp() throws Exception + { + pluginRepos.add( newRepositoryWithId( "#pr-central" ) ); + pluginRepos.add( newRepositoryWithId( "#pr-plugins" ) ); - artifactRepos.add(newRepositoryWithId("#ar-central")); - artifactRepos.add(newRepositoryWithId("#ar-snapshots")); - artifactRepos.add(newRepositoryWithId("#ar-staging")); + artifactRepos.add( newRepositoryWithId( "#ar-central" ) ); + artifactRepos.add( newRepositoryWithId( "#ar-snapshots" ) ); + artifactRepos.add( newRepositoryWithId( "#ar-staging" ) ); - when(session.getProjectBuildingRequest()).thenReturn(buildingRequest); + when( session.getProjectBuildingRequest() ).thenReturn( buildingRequest ); } - private static ArtifactRepository newRepositoryWithId(String id) + private static ArtifactRepository newRepositoryWithId( String id ) { - ArtifactRepository repo = mock(ArtifactRepository.class); - when(repo.getId()).thenReturn(id); + ArtifactRepository repo = mock( ArtifactRepository.class ); + when( repo.getId() ).thenReturn( id ); return repo; } - public void testNewResolveArtifactProjectBuildingRequestRemoteRepositoriesSize() throws NoSuchFieldException, IllegalAccessException { - AbstractDependencyMojo mojo = createConcreteDependencyMojoWithArtifactRepositories(session, artifactRepos); + public void testNewResolveArtifactProjectBuildingRequestRemoteRepositoriesSize() + throws NoSuchFieldException, IllegalAccessException + { + AbstractDependencyMojo mojo = createConcreteDependencyMojoWithArtifactRepositories( session, artifactRepos ); ProjectBuildingRequest pbr = mojo.newResolveArtifactProjectBuildingRequest(); List rrepos = pbr.getRemoteRepositories(); - assertEquals(3, rrepos.size()); + assertEquals( 3, rrepos.size() ); } - public void testNewResolveArtifactProjectBuildingRequestRemoteRepositoriesContents() throws NoSuchFieldException, IllegalAccessException { - AbstractDependencyMojo mojo = createConcreteDependencyMojoWithArtifactRepositories(session, artifactRepos); + public void testNewResolveArtifactProjectBuildingRequestRemoteRepositoriesContents() + throws NoSuchFieldException, IllegalAccessException + { + AbstractDependencyMojo mojo = createConcreteDependencyMojoWithArtifactRepositories( session, artifactRepos ); ProjectBuildingRequest pbr = mojo.newResolveArtifactProjectBuildingRequest(); List rrepos = pbr.getRemoteRepositories(); - assertEquals("#ar-central", rrepos.get(0).getId()); - assertEquals("#ar-snapshots", rrepos.get(1).getId()); - assertEquals("#ar-staging", rrepos.get(2).getId()); + assertEquals( "#ar-central", rrepos.get( 0 ).getId() ); + assertEquals( "#ar-snapshots", rrepos.get( 1 ).getId() ); + assertEquals( "#ar-staging", rrepos.get( 2 ).getId() ); } - public void testNewResolvePluginProjectBuildingRequestRemoteRepositoriesSize() throws NoSuchFieldException, IllegalAccessException { - AbstractDependencyMojo mojo = createConcreteDependencyMojoWithPluginRepositories(session, pluginRepos); + public void testNewResolvePluginProjectBuildingRequestRemoteRepositoriesSize() + throws NoSuchFieldException, IllegalAccessException + { + AbstractDependencyMojo mojo = createConcreteDependencyMojoWithPluginRepositories( session, pluginRepos ); ProjectBuildingRequest pbr = mojo.newResolvePluginProjectBuildingRequest(); List rrepos = pbr.getRemoteRepositories(); - assertEquals(2, rrepos.size()); + assertEquals( 2, rrepos.size() ); } - public void testNewResolvePluginProjectBuildingRequestRemoteRepositoriesContents() throws NoSuchFieldException, IllegalAccessException { - AbstractDependencyMojo mojo = createConcreteDependencyMojoWithPluginRepositories(session, pluginRepos); + public void testNewResolvePluginProjectBuildingRequestRemoteRepositoriesContents() + throws NoSuchFieldException, IllegalAccessException + { + AbstractDependencyMojo mojo = createConcreteDependencyMojoWithPluginRepositories( session, pluginRepos ); ProjectBuildingRequest pbr = mojo.newResolvePluginProjectBuildingRequest(); List rrepos = pbr.getRemoteRepositories(); - assertEquals("#pr-central", rrepos.get(0).getId()); - assertEquals("#pr-plugins", rrepos.get(1).getId()); + assertEquals( "#pr-central", rrepos.get( 0 ).getId() ); + assertEquals( "#pr-plugins", rrepos.get( 1 ).getId() ); } } \ No newline at end of file From 803a47ffbb4f11f6d34eb6fb61d66a04b84c9231 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotrek=20=C5=BBygie=C5=82o?= Date: Sat, 30 May 2020 15:31:13 +0200 Subject: [PATCH 10/10] Drop usage of String.format --- .../maven/plugins/dependency/resolvers/GoOfflineMojo.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/apache/maven/plugins/dependency/resolvers/GoOfflineMojo.java b/src/main/java/org/apache/maven/plugins/dependency/resolvers/GoOfflineMojo.java index 9adef0ce6..97a70ab29 100644 --- a/src/main/java/org/apache/maven/plugins/dependency/resolvers/GoOfflineMojo.java +++ b/src/main/java/org/apache/maven/plugins/dependency/resolvers/GoOfflineMojo.java @@ -38,8 +38,6 @@ import java.util.LinkedHashSet; import java.util.Set; -import static java.lang.String.format; - /** * Goal that resolves all project dependencies, including plugins and reports and their dependencies. * @@ -122,10 +120,10 @@ private Set resolveDependableCoordinate( final ProjectBuildingRequest final Set results = new HashSet<>(); - this.getLog().debug( String.format( "Resolving %s with following repositories:", type ) ); + this.getLog().debug( "Resolving " + type + " with following repositories:" ); for ( ArtifactRepository repo : buildingRequest.getRemoteRepositories() ) { - getLog().debug( format( "#%s (%s)", repo.getId(), repo.getUrl() ) ); + getLog().debug( "#" + repo.getId() + " (" + repo.getUrl() + ")" ); } for ( DependableCoordinate dependableCoordinate : dependableCoordinates )