From 2c5e26ec8b06fe5fd93b077e119719c7c6c3c835 Mon Sep 17 00:00:00 2001 From: Andrzej Jarmoniuk Date: Fri, 25 Nov 2022 08:31:21 +0100 Subject: [PATCH] #704: Removing MavenProjectBuilder --- .../codehaus/mojo/versions/api/PomHelper.java | 98 ++++++++++++++++--- ...AbstractVersionsDependencyUpdaterMojo.java | 5 +- .../versions/AbstractVersionsDisplayMojo.java | 5 +- .../versions/AbstractVersionsUpdaterMojo.java | 11 --- .../versions/CompareDependenciesMojo.java | 3 +- .../DisplayDependencyUpdatesMojo.java | 5 +- .../versions/DisplayParentUpdatesMojo.java | 5 +- .../versions/DisplayPluginUpdatesMojo.java | 87 ++++++++++------ .../versions/DisplayPropertyUpdatesMojo.java | 5 +- .../mojo/versions/ForceReleasesMojo.java | 9 +- .../mojo/versions/LockSnapshotsMojo.java | 5 +- .../mojo/versions/ResolveRangesMojo.java | 5 +- .../codehaus/mojo/versions/RevertMojo.java | 24 +++-- .../org/codehaus/mojo/versions/SetMojo.java | 17 +++- .../mojo/versions/SetPropertyMojo.java | 5 +- .../codehaus/mojo/versions/SetScmTagMojo.java | 5 +- .../mojo/versions/UnlockSnapshotsMojo.java | 5 +- .../mojo/versions/UpdateChildModulesMojo.java | 5 +- .../mojo/versions/UpdateParentMojo.java | 5 +- .../mojo/versions/UpdatePropertiesMojo.java | 5 +- .../mojo/versions/UpdatePropertyMojo.java | 5 +- .../mojo/versions/UseDepVersionMojo.java | 5 +- .../mojo/versions/UseLatestReleasesMojo.java | 5 +- .../mojo/versions/UseLatestSnapshotsMojo.java | 5 +- .../mojo/versions/UseLatestVersionsMojo.java | 7 +- .../versions/UseLatestVersionsMojoBase.java | 5 +- .../mojo/versions/UseNextReleasesMojo.java | 9 +- .../mojo/versions/UseNextSnapshotsMojo.java | 5 +- .../mojo/versions/UseNextVersionsMojo.java | 9 +- .../mojo/versions/UseReactorMojo.java | 5 +- .../mojo/versions/UseReleasesMojo.java | 5 +- .../DisplayDependencyUpdatesMojoTest.java | 5 - .../mojo/versions/ForceReleasesMojoTest.java | 2 +- ...ratePatternsForIncludesAnExcludesTest.java | 2 +- .../mojo/versions/UpdateParentMojoTest.java | 2 +- .../versions/UseLatestReleasesMojoTest.java | 1 - .../versions/UseLatestVersionsMojoTest.java | 1 - .../mojo/versions/UseReleasesMojoTest.java | 1 - 38 files changed, 203 insertions(+), 190 deletions(-) diff --git a/versions-common/src/main/java/org/codehaus/mojo/versions/api/PomHelper.java b/versions-common/src/main/java/org/codehaus/mojo/versions/api/PomHelper.java index 938ba9ee19..249dfbf3fc 100644 --- a/versions-common/src/main/java/org/codehaus/mojo/versions/api/PomHelper.java +++ b/versions-common/src/main/java/org/codehaus/mojo/versions/api/PomHelper.java @@ -37,29 +37,35 @@ import java.util.LinkedHashMap; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.Properties; import java.util.Set; import java.util.Stack; import java.util.TreeMap; import java.util.TreeSet; +import java.util.function.Consumer; import java.util.regex.Matcher; import java.util.regex.Pattern; -import org.apache.maven.artifact.repository.ArtifactRepository; import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException; import org.apache.maven.artifact.versioning.VersionRange; +import org.apache.maven.execution.MavenSession; import org.apache.maven.model.Dependency; import org.apache.maven.model.Model; import org.apache.maven.model.Parent; import org.apache.maven.model.Plugin; import org.apache.maven.model.Profile; import org.apache.maven.model.ReportPlugin; +import org.apache.maven.model.building.ModelBuildingRequest; +import org.apache.maven.model.building.UrlModelSource; import org.apache.maven.model.io.xpp3.MavenXpp3Reader; import org.apache.maven.plugin.logging.Log; -import org.apache.maven.profiles.ProfileManager; +import org.apache.maven.project.DefaultProjectBuildingRequest; import org.apache.maven.project.MavenProject; -import org.apache.maven.project.MavenProjectBuilder; +import org.apache.maven.project.ProjectBuilder; import org.apache.maven.project.ProjectBuildingException; +import org.apache.maven.project.ProjectBuildingRequest; +import org.apache.maven.project.ProjectBuildingResult; import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader; import org.codehaus.mojo.versions.utils.RegexUtils; import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException; @@ -1462,37 +1468,43 @@ public static String getGroupId( Model model ) } /** - * Finds the local root of the specified project. + * Finds the local root of the current project of the {@link MavenSession} instance. * - * @param project The project to find the local root for. - * @param builder {@linkplain MavenProjectBuilder} object - * @param localRepository the local repo. - * @param globalProfileManager the global profile manager. + * @param projectBuilder {@link ProjectBuilder} instance + * @param mavenSession {@link MavenSession} instance * @param logger The logger to log tog * @return The local root (note this may be the project passed as an argument). */ - public static MavenProject getLocalRoot( MavenProjectBuilder builder, MavenProject project, - ArtifactRepository localRepository, ProfileManager globalProfileManager, + public static MavenProject getLocalRoot( ProjectBuilder projectBuilder, + MavenSession mavenSession, Log logger ) { logger.info( "Searching for local aggregator root..." ); + MavenProject project = mavenSession.getCurrentProject(); while ( true ) { final File parentDir = project.getBasedir().getParentFile(); if ( parentDir != null && parentDir.isDirectory() ) { logger.debug( "Checking to see if " + parentDir + " is an aggregator parent" ); - File parent = new File( parentDir, "pom.xml" ); - if ( parent.isFile() ) + File parentFile = new File( parentDir, "pom.xml" ); + if ( parentFile.isFile() ) { try { - final MavenProject parentProject = - builder.build( parent, localRepository, globalProfileManager ); - if ( getAllChildModules( parentProject, logger ).contains( project.getBasedir().getName() ) ) + ProjectBuildingResult result = projectBuilder.build( parentFile, + createProjectBuilderRequest( mavenSession ) ); + if ( result.getProblems() != null ) + { + logger.warn( "Problems encountered during the computation of the local aggregation root." ); + result.getProblems().forEach( p -> + logger.warn( "\t" + p.getMessage() ) ); + } + if ( getAllChildModules( result.getProject(), logger ) + .contains( project.getBasedir().getName() ) ) { logger.debug( parentDir + " is an aggregator parent" ); - project = parentProject; + project = result.getProject(); continue; } else @@ -1511,6 +1523,60 @@ public static MavenProject getLocalRoot( MavenProjectBuilder builder, MavenProje } } + /** + * Retrieves the standalone superproject + * + * @param projectBuilder {@link ProjectBuilder} instance + * @param mavenSession {@link MavenSession} instance + * @param logger The logger to log tog + * + * @return superproject retrieved + * @throws ProjectBuildingException if the retrieval fails + */ + public static MavenProject getStandaloneSuperProject( ProjectBuilder projectBuilder, + MavenSession mavenSession, + Log logger ) throws ProjectBuildingException + { + ProjectBuildingResult result = projectBuilder.build( new UrlModelSource( + Objects.requireNonNull( PomHelper.class.getResource( "standalone.xml" ) ) ), + createProjectBuilderRequest( mavenSession, r -> r.setProcessPlugins( false ) ) ); + if ( result.getProblems() != null ) + { + logger.warn( "Problems encountered during building of the superproject." ); + result.getProblems().forEach( p -> + logger.warn( "\t" + p.getMessage() ) ); + } + return result.getProject(); + } + + /** + *

Convenience method for creating a {@link ProjectBuildingRequest} instance based on maven session.

+ *

Note: The method initializes the remote repositories with the remote artifact repositories. + * Please use the initializers if you need to override this.

+ * @param mavenSession {@link MavenSession} instance + * @param initializers optional additional initializers, which will be executed after the object is initialized + * @return constructed builder request + */ + @SafeVarargs + public static ProjectBuildingRequest createProjectBuilderRequest( MavenSession mavenSession, + Consumer... initializers ) + { + return new DefaultProjectBuildingRequest() + {{ + setValidationLevel( ModelBuildingRequest.VALIDATION_LEVEL_MINIMAL ); + setResolveDependencies( false ); + setLocalRepository( mavenSession.getLocalRepository() ); + setRemoteRepositories( mavenSession.getCurrentProject().getRemoteArtifactRepositories() ); + setBuildStartTime( mavenSession.getStartTime() ); + setUserProperties( mavenSession.getUserProperties() ); + setSystemProperties( mavenSession.getSystemProperties() ); + setActiveProfileIds( mavenSession.getRequest().getActiveProfiles() ); + setInactiveProfileIds( mavenSession.getRequest().getInactiveProfiles() ); + setRepositorySession( mavenSession.getRepositorySession() ); + Arrays.stream( initializers ).forEach( i -> i.accept( this ) ); + }}; + } + /** * Builds a map of raw models keyed by module path. * diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsDependencyUpdaterMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsDependencyUpdaterMojo.java index 5bee054503..6d29ab1f71 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsDependencyUpdaterMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsDependencyUpdaterMojo.java @@ -39,7 +39,6 @@ import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugins.annotations.Parameter; import org.apache.maven.project.MavenProject; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.apache.maven.shared.artifact.filter.PatternExcludesArtifactFilter; import org.apache.maven.shared.artifact.filter.PatternIncludesArtifactFilter; @@ -160,13 +159,11 @@ public abstract class AbstractVersionsDependencyUpdaterMojo @Inject protected AbstractVersionsDependencyUpdaterMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsDisplayMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsDisplayMojo.java index 98a6779361..abb6611de4 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsDisplayMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsDisplayMojo.java @@ -33,7 +33,6 @@ import org.apache.maven.artifact.manager.WagonManager; import org.apache.maven.artifact.resolver.ArtifactResolver; import org.apache.maven.plugins.annotations.Parameter; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.recording.ChangeRecorder; @@ -87,13 +86,11 @@ public abstract class AbstractVersionsDisplayMojo @Inject protected AbstractVersionsDisplayMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } @SuppressWarnings( "unchecked" ) diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsUpdaterMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsUpdaterMojo.java index 4b69512ba5..2cd0e172cc 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsUpdaterMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/AbstractVersionsUpdaterMojo.java @@ -47,7 +47,6 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Parameter; import org.apache.maven.project.MavenProject; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.apache.maven.settings.Settings; import org.codehaus.mojo.versions.api.ArtifactVersions; @@ -96,14 +95,6 @@ public abstract class AbstractVersionsUpdaterMojo */ protected org.eclipse.aether.RepositorySystem aetherRepositorySystem; - /** - * The (injected) {@link MavenProjectBuilder} instance. - */ - /** - * @since 1.0-alpha-1 - */ - protected final MavenProjectBuilder projectBuilder; - /** * @since 1.0-alpha-1 */ @@ -243,14 +234,12 @@ public abstract class AbstractVersionsUpdaterMojo @Inject protected AbstractVersionsUpdaterMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { this.repositorySystem = repositorySystem; this.aetherRepositorySystem = aetherRepositorySystem; - this.projectBuilder = projectBuilder; this.wagonManager = wagonManager; this.artifactResolver = artifactResolver; this.changeRecorders = changeRecorders; diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/CompareDependenciesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/CompareDependenciesMojo.java index a955c8555b..d9bf0b9c71 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/CompareDependenciesMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/CompareDependenciesMojo.java @@ -128,13 +128,12 @@ public class CompareDependenciesMojo @Inject public CompareDependenciesMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, MavenProjectBuilder mavenProjectBuilder, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); this.mavenProjectBuilder = mavenProjectBuilder; } diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayDependencyUpdatesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayDependencyUpdatesMojo.java index 02c7cc1b72..913a24de07 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayDependencyUpdatesMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayDependencyUpdatesMojo.java @@ -43,7 +43,6 @@ import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; import org.apache.maven.project.MavenProject; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.ArtifactVersions; import org.codehaus.mojo.versions.api.Segment; @@ -348,13 +347,11 @@ public class DisplayDependencyUpdatesMojo @Inject public DisplayDependencyUpdatesMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } private static Set extractPluginDependenciesFromPluginsInPluginManagement( Build build ) diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayParentUpdatesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayParentUpdatesMojo.java index a932c5aa28..3eef8f2ced 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayParentUpdatesMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayParentUpdatesMojo.java @@ -32,7 +32,6 @@ import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.VersionRetrievalException; import org.codehaus.mojo.versions.api.recording.ChangeRecorder; @@ -55,13 +54,11 @@ public class DisplayParentUpdatesMojo @Inject public DisplayParentUpdatesMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } @Override diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayPluginUpdatesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayPluginUpdatesMojo.java index 41840c2785..b850b959b4 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayPluginUpdatesMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayPluginUpdatesMojo.java @@ -84,10 +84,10 @@ import org.apache.maven.plugin.version.PluginVersionNotFoundException; import org.apache.maven.plugin.version.PluginVersionResolutionException; import org.apache.maven.plugins.annotations.Mojo; -import org.apache.maven.project.DefaultProjectBuilderConfiguration; import org.apache.maven.project.MavenProject; -import org.apache.maven.project.MavenProjectBuilder; +import org.apache.maven.project.ProjectBuilder; import org.apache.maven.project.ProjectBuildingException; +import org.apache.maven.project.ProjectBuildingResult; import org.apache.maven.repository.RepositorySystem; import org.apache.maven.settings.Settings; import org.codehaus.mojo.versions.api.ArtifactVersions; @@ -159,13 +159,20 @@ public class DisplayPluginUpdatesMojo */ private RuntimeInformation runtimeInformation; + /** + * The (injected) instance of {@link ProjectBuilder} + * + * @since 2.14.0 + */ + protected final ProjectBuilder projectBuilder; + // --------------------- GETTER / SETTER METHODS --------------------- @Inject @SuppressWarnings( "checkstyle:ParameterNumber" ) public DisplayPluginUpdatesMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, + ProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, LifecycleExecutor lifecycleExecutor, @@ -174,8 +181,9 @@ public DisplayPluginUpdatesMojo( RepositorySystem repositorySystem, RuntimeInformation runtimeInformation, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); + this.projectBuilder = projectBuilder; this.lifecycleExecutor = lifecycleExecutor; this.modelInterpolator = modelInterpolator; this.pluginManager = pluginManager; @@ -298,9 +306,8 @@ else if ( event.isEndElement() ) Map superPomPluginManagement; try { - MavenProject superProject = - projectBuilder.buildStandaloneSuperProject( new DefaultProjectBuilderConfiguration() ); - superPomPluginManagement = new HashMap<>( getPluginManagement( superProject.getOriginalModel() ) ); + superPomPluginManagement = new HashMap<>( getPluginManagement( + PomHelper.getStandaloneSuperProject( projectBuilder, session, getLog() ).getOriginalModel() ) ); } catch ( ProjectBuildingException e ) { @@ -449,19 +456,10 @@ public void execute() ArtifactVersion minRequires = null; for ( int j = newerVersions.length - 1; j >= 0; j-- ) { - Artifact probe = getHelper().createDependencyArtifact( DependencyBuilder.newBuilder() - .withGroupId( groupId ) - .withArtifactId( artifactId ) - .withVersion( newerVersions[j].toString() ) - .withType( "pom" ) - .withScope( Artifact.SCOPE_RUNTIME ) - .build() ); try { - getHelper().resolveArtifact( probe, true ); - MavenProject pluginMavenProject = - projectBuilder.buildFromRepository( probe, remotePluginRepositories, localRepository ); - ArtifactVersion pluginRequires = getPrerequisitesMavenVersion( pluginMavenProject ); + ArtifactVersion pluginRequires = getPrerequisitesMavenVersion( + getPluginProject( groupId, artifactId, newerVersions[j].toString() ) ); if ( artifactVersion == null && compare( specMavenVersion, pluginRequires ) >= 0 ) { // ok, newer version compatible with current specMavenVersion @@ -513,19 +511,11 @@ public void execute() } if ( effectiveVersion != null ) { - Artifact probe = getHelper().createDependencyArtifact( DependencyBuilder.newBuilder() - .withGroupId( groupId ) - .withArtifactId( artifactId ) - .withVersion( effectiveVersion ) - .withType( "pom" ) - .withScope( Artifact.SCOPE_RUNTIME ) - .build() ); try { - getHelper().resolveArtifact( probe, true ); - MavenProject mavenProject = - projectBuilder.buildFromRepository( probe, remotePluginRepositories, localRepository ); - ArtifactVersion requires = getPrerequisitesMavenVersion( mavenProject ); + + ArtifactVersion requires = getPrerequisitesMavenVersion( + getPluginProject( groupId, artifactId, effectiveVersion ) ); if ( minMavenVersion == null || compare( minMavenVersion, requires ) < 0 ) { minMavenVersion = requires; @@ -715,6 +705,45 @@ else if ( minMavenVersion != null && compare( specMavenVersion, minMavenVersion logLine( false, "" ); } + /** + * Builds a {@link MavenProject} instance for the plugin with a given {@code groupId}, + * {@code artifactId}, and {@code version}. + * @param groupId {@code groupId} of the plugin + * @param artifactId {@code artifactId} of the plugin + * @param version {@code version} of the plugin + * @return retrieved {@link MavenProject} instance for the given plugin + * @throws MojoExecutionException thrown if the artifact for the plugin could not be constructed + * @throws ArtifactNotFoundException if the given artifact could not be found + * @throws ProjectBuildingException thrown if the {@link MavenProject} instance could not be constructed + */ + private MavenProject getPluginProject( String groupId, String artifactId, String version ) + throws MojoExecutionException, ProjectBuildingException, ArtifactResolutionException, + ArtifactNotFoundException + { + Artifact probe = getHelper().createDependencyArtifact( DependencyBuilder.newBuilder() + .withGroupId( groupId ) + .withArtifactId( artifactId ) + .withVersion( version ) + .withType( "pom" ) + .withScope( Artifact.SCOPE_RUNTIME ) + .build() ); + getHelper().resolveArtifact( probe, true ); + ProjectBuildingResult result = + projectBuilder.build( probe, true, + PomHelper.createProjectBuilderRequest( session, + r -> r.setProcessPlugins( false ), + r -> r.setRemoteRepositories( session.getCurrentProject() + .getPluginArtifactRepositories() ) ) ); + if ( result.getProblems().isEmpty() ) + { + getLog().warn( "Problems encountered during construction of the plugin POM for " + + probe.toString() ); + result.getProblems().forEach( p -> + getLog().warn( "\t" + p.getMessage() ) ); + } + return result.getProject(); + } + private static String pad( String start, int len, String... ends ) { StringBuilder buf = new StringBuilder( len ); diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayPropertyUpdatesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayPropertyUpdatesMojo.java index 7bf8d69256..b68a84e88f 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayPropertyUpdatesMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/DisplayPropertyUpdatesMojo.java @@ -35,7 +35,6 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.Property; import org.codehaus.mojo.versions.api.PropertyVersions; @@ -143,13 +142,11 @@ public class DisplayPropertyUpdatesMojo @Inject public DisplayPropertyUpdatesMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } public void execute() diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/ForceReleasesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/ForceReleasesMojo.java index 256c979469..1e2ae1b02a 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/ForceReleasesMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/ForceReleasesMojo.java @@ -38,13 +38,12 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.ArtifactVersions; -import org.codehaus.mojo.versions.api.recording.ChangeRecord; -import org.codehaus.mojo.versions.api.recording.ChangeRecorder; import org.codehaus.mojo.versions.api.PomHelper; import org.codehaus.mojo.versions.api.VersionRetrievalException; +import org.codehaus.mojo.versions.api.recording.ChangeRecord; +import org.codehaus.mojo.versions.api.recording.ChangeRecorder; import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader; import static java.util.Collections.singletonList; @@ -72,13 +71,11 @@ public class ForceReleasesMojo @Inject public ForceReleasesMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/LockSnapshotsMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/LockSnapshotsMojo.java index 735c43244e..addb826b14 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/LockSnapshotsMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/LockSnapshotsMojo.java @@ -37,7 +37,6 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.project.MavenProject; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.PomHelper; import org.codehaus.mojo.versions.api.recording.ChangeRecorder; @@ -69,13 +68,11 @@ public class LockSnapshotsMojo @Inject public LockSnapshotsMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/ResolveRangesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/ResolveRangesMojo.java index d0c8198bfe..24ebb37c48 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/ResolveRangesMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/ResolveRangesMojo.java @@ -39,7 +39,6 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.PomHelper; import org.codehaus.mojo.versions.api.Property; @@ -129,13 +128,11 @@ public class ResolveRangesMojo @Inject public ResolveRangesMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/RevertMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/RevertMojo.java index c2c294fcf2..dd49650b40 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/RevertMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/RevertMojo.java @@ -28,13 +28,14 @@ import java.util.Set; import org.apache.maven.artifact.repository.ArtifactRepository; +import org.apache.maven.execution.MavenSession; import org.apache.maven.plugin.AbstractMojo; import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; import org.apache.maven.project.MavenProject; -import org.apache.maven.project.MavenProjectBuilder; +import org.apache.maven.project.ProjectBuilder; import org.codehaus.mojo.versions.api.PomHelper; import static java.nio.file.StandardCopyOption.REPLACE_EXISTING; @@ -49,12 +50,12 @@ public class RevertMojo extends AbstractMojo { /** - * The Maven Project. + * The {@link MavenSession} instance * - * @since 1.0-alpha-1 + * @since 2.14.0 */ - @Parameter( defaultValue = "${project}", required = true, readonly = true ) - private MavenProject project; + @Parameter( defaultValue = "${session}", required = true, readonly = true ) + private MavenSession session; /** * Whether to start processing at the local aggregation root (which might be a parent module @@ -66,13 +67,18 @@ public class RevertMojo extends AbstractMojo @Parameter( property = "processFromLocalAggregationRoot", defaultValue = "true" ) private boolean processFromLocalAggregationRoot; - protected MavenProjectBuilder projectBuilder; + /** + * The (injected) {@link ProjectBuilder} instance + * + * @since 2.14.0 + */ + protected final ProjectBuilder projectBuilder; @Parameter( defaultValue = "${localRepository}", readonly = true ) protected ArtifactRepository localRepository; @Inject - protected RevertMojo( MavenProjectBuilder projectBuilder ) + protected RevertMojo( ProjectBuilder projectBuilder ) { this.projectBuilder = projectBuilder; } @@ -80,8 +86,8 @@ protected RevertMojo( MavenProjectBuilder projectBuilder ) public void execute() throws MojoExecutionException, MojoFailureException { final MavenProject projectToProcess = !processFromLocalAggregationRoot - ? PomHelper.getLocalRoot( projectBuilder, this.project, localRepository, null, getLog() ) - : this.project; + ? PomHelper.getLocalRoot( projectBuilder, session, getLog() ) + : session.getCurrentProject(); getLog().info( "Local aggregation root: " + projectToProcess.getBasedir() ); Set reactor = PomHelper.getAllChildModules( projectToProcess, getLog() ); diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetMojo.java index 4924289303..2fd9df7579 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetMojo.java @@ -50,7 +50,7 @@ import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; import org.apache.maven.project.MavenProject; -import org.apache.maven.project.MavenProjectBuilder; +import org.apache.maven.project.ProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.PomHelper; import org.codehaus.mojo.versions.api.recording.ChangeRecorder; @@ -245,17 +245,24 @@ public class SetMojo extends AbstractVersionsUpdaterMojo */ private final transient List sourceChanges = new ArrayList<>(); + /** + * The (injected) instance of {@link ProjectBuilder} + * + * @since 2.14.0 + */ + protected final ProjectBuilder projectBuilder; + @Inject public SetMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, + ProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders, Prompter prompter ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); + this.projectBuilder = projectBuilder; this.prompter = prompter; } @@ -340,7 +347,7 @@ public void execute() throws MojoExecutionException, MojoFailureException try { final MavenProject project = processFromLocalAggregationRoot - ? PomHelper.getLocalRoot( projectBuilder, getProject(), localRepository, null, getLog() ) + ? PomHelper.getLocalRoot( projectBuilder, session, getLog() ) : getProject(); getLog().info( "Local aggregation root: " + project.getBasedir() ); diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetPropertyMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetPropertyMojo.java index 6abca80b7c..f91560930f 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetPropertyMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetPropertyMojo.java @@ -32,7 +32,6 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.PomHelper; import org.codehaus.mojo.versions.api.Property; @@ -93,13 +92,11 @@ public class SetPropertyMojo @Inject public SetPropertyMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetScmTagMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetScmTagMojo.java index 777ec9287e..0791278de1 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetScmTagMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/SetScmTagMojo.java @@ -15,7 +15,6 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.PomHelper; import org.codehaus.mojo.versions.api.recording.ChangeRecorder; @@ -69,13 +68,11 @@ public class SetScmTagMojo extends AbstractVersionsUpdaterMojo @Inject public SetScmTagMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UnlockSnapshotsMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UnlockSnapshotsMojo.java index e3c18336ba..dbf29d9341 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UnlockSnapshotsMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UnlockSnapshotsMojo.java @@ -37,7 +37,6 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.project.MavenProject; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.PomHelper; import org.codehaus.mojo.versions.api.recording.ChangeRecord; @@ -70,13 +69,11 @@ public class UnlockSnapshotsMojo extends AbstractVersionsDependencyUpdaterMojo @Inject public UnlockSnapshotsMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdateChildModulesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdateChildModulesMojo.java index 0cd87fa827..78c11ab19c 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdateChildModulesMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdateChildModulesMojo.java @@ -36,7 +36,6 @@ import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.PomHelper; import org.codehaus.mojo.versions.api.recording.ChangeRecorder; @@ -72,13 +71,11 @@ public class UpdateChildModulesMojo @Inject public UpdateChildModulesMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdateParentMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdateParentMojo.java index 1dac708177..5eb8e54a2a 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdateParentMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdateParentMojo.java @@ -39,7 +39,6 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.ArtifactVersions; import org.codehaus.mojo.versions.api.PomHelper; @@ -141,13 +140,11 @@ public class UpdateParentMojo extends AbstractVersionsUpdaterMojo @Inject public UpdateParentMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdatePropertiesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdatePropertiesMojo.java index a5c5d8a094..bf670cddff 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdatePropertiesMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdatePropertiesMojo.java @@ -33,7 +33,6 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.ArtifactAssociation; import org.codehaus.mojo.versions.api.Property; @@ -142,13 +141,11 @@ public class UpdatePropertiesMojo extends AbstractVersionsDependencyUpdaterMojo @Inject public UpdatePropertiesMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdatePropertyMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdatePropertyMojo.java index abef1cf509..42f5f1d5e4 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdatePropertyMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UpdatePropertyMojo.java @@ -33,7 +33,6 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.ArtifactAssociation; import org.codehaus.mojo.versions.api.Property; @@ -141,13 +140,11 @@ public class UpdatePropertyMojo @Inject public UpdatePropertyMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseDepVersionMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseDepVersionMojo.java index c895e14680..fc6f806c92 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseDepVersionMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseDepVersionMojo.java @@ -35,7 +35,6 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.ArtifactVersions; import org.codehaus.mojo.versions.api.PomHelper; @@ -76,13 +75,11 @@ public class UseDepVersionMojo extends AbstractVersionsDependencyUpdaterMojo @Inject public UseDepVersionMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } @Override diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestReleasesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestReleasesMojo.java index f0f8d9a2aa..16681ad599 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestReleasesMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestReleasesMojo.java @@ -41,7 +41,6 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.PomHelper; import org.codehaus.mojo.versions.api.Segment; @@ -105,13 +104,11 @@ public class UseLatestReleasesMojo @Inject public UseLatestReleasesMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestSnapshotsMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestSnapshotsMojo.java index 96f183b654..d64dea71a7 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestSnapshotsMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestSnapshotsMojo.java @@ -37,7 +37,6 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.PomHelper; import org.codehaus.mojo.versions.api.Segment; @@ -94,13 +93,11 @@ public class UseLatestSnapshotsMojo @Inject public UseLatestSnapshotsMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestVersionsMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestVersionsMojo.java index d7d018d906..de67720f63 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestVersionsMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestVersionsMojo.java @@ -35,13 +35,12 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.PomHelper; import org.codehaus.mojo.versions.api.Segment; +import org.codehaus.mojo.versions.api.VersionRetrievalException; import org.codehaus.mojo.versions.api.recording.ChangeRecord; import org.codehaus.mojo.versions.api.recording.ChangeRecorder; -import org.codehaus.mojo.versions.api.VersionRetrievalException; import org.codehaus.mojo.versions.ordering.InvalidSegmentException; import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader; import org.codehaus.mojo.versions.utils.SegmentUtils; @@ -102,13 +101,11 @@ public class UseLatestVersionsMojo @Inject public UseLatestVersionsMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } @Override diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestVersionsMojoBase.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestVersionsMojoBase.java index da94696cd4..c0623a4210 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestVersionsMojoBase.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseLatestVersionsMojoBase.java @@ -35,7 +35,6 @@ import org.apache.maven.artifact.versioning.DefaultArtifactVersion; import org.apache.maven.model.Dependency; import org.apache.maven.plugin.MojoExecutionException; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.ArtifactVersions; import org.codehaus.mojo.versions.api.VersionRetrievalException; @@ -52,13 +51,11 @@ public abstract class UseLatestVersionsMojoBase { public UseLatestVersionsMojoBase( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextReleasesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextReleasesMojo.java index 64ab6c8b5e..308e2287a1 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextReleasesMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextReleasesMojo.java @@ -34,12 +34,11 @@ import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; -import org.codehaus.mojo.versions.api.recording.ChangeRecord; -import org.codehaus.mojo.versions.api.recording.ChangeRecorder; import org.codehaus.mojo.versions.api.PomHelper; import org.codehaus.mojo.versions.api.VersionRetrievalException; +import org.codehaus.mojo.versions.api.recording.ChangeRecord; +import org.codehaus.mojo.versions.api.recording.ChangeRecorder; import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader; import static java.util.Collections.singletonList; @@ -68,13 +67,11 @@ public class UseNextReleasesMojo @Inject public UseNextReleasesMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextSnapshotsMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextSnapshotsMojo.java index ced9081288..a2ebaf6cf5 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextSnapshotsMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextSnapshotsMojo.java @@ -36,7 +36,6 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.PomHelper; import org.codehaus.mojo.versions.api.Segment; @@ -93,13 +92,11 @@ public class UseNextSnapshotsMojo @Inject public UseNextSnapshotsMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); // the below is necessary for UseLatestVersionsMojoBase.useLatestVersions to select snapshots allowSnapshots = true; } diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextVersionsMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextVersionsMojo.java index 925ca661c6..ffab690d7c 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextVersionsMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseNextVersionsMojo.java @@ -33,12 +33,11 @@ import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; -import org.codehaus.mojo.versions.api.recording.ChangeRecord; -import org.codehaus.mojo.versions.api.recording.ChangeRecorder; import org.codehaus.mojo.versions.api.PomHelper; import org.codehaus.mojo.versions.api.VersionRetrievalException; +import org.codehaus.mojo.versions.api.recording.ChangeRecord; +import org.codehaus.mojo.versions.api.recording.ChangeRecorder; import org.codehaus.mojo.versions.rewriting.ModifiedPomXMLEventReader; import static java.util.Collections.singletonList; @@ -60,13 +59,11 @@ public class UseNextVersionsMojo @Inject public UseNextVersionsMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseReactorMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseReactorMojo.java index f583ce2287..130b52e94c 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseReactorMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseReactorMojo.java @@ -36,7 +36,6 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.project.MavenProject; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.PomHelper; import org.codehaus.mojo.versions.api.VersionRetrievalException; @@ -59,13 +58,11 @@ public class UseReactorMojo @Inject public UseReactorMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseReleasesMojo.java b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseReleasesMojo.java index e1a69d156e..e44246c799 100644 --- a/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseReleasesMojo.java +++ b/versions-maven-plugin/src/main/java/org/codehaus/mojo/versions/UseReleasesMojo.java @@ -39,7 +39,6 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.plugins.annotations.Mojo; import org.apache.maven.plugins.annotations.Parameter; -import org.apache.maven.project.MavenProjectBuilder; import org.apache.maven.repository.RepositorySystem; import org.codehaus.mojo.versions.api.ArtifactVersions; import org.codehaus.mojo.versions.api.PomHelper; @@ -86,13 +85,11 @@ public class UseReleasesMojo @Inject public UseReleasesMojo( RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystem aetherRepositorySystem, - MavenProjectBuilder projectBuilder, WagonManager wagonManager, ArtifactResolver artifactResolver, Map changeRecorders ) { - super( repositorySystem, aetherRepositorySystem, projectBuilder, wagonManager, artifactResolver, - changeRecorders ); + super( repositorySystem, aetherRepositorySystem, wagonManager, artifactResolver, changeRecorders ); } /** diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/DisplayDependencyUpdatesMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/DisplayDependencyUpdatesMojoTest.java index f399589147..620a802cc6 100644 --- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/DisplayDependencyUpdatesMojoTest.java +++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/DisplayDependencyUpdatesMojoTest.java @@ -164,7 +164,6 @@ public void testVersionsWithQualifiersNotConsideredAsMinorUpdates() "2.0.0-rc1"} ); }} ), null, - null, new StubArtifactResolver( new ArtifactStubFactory(), false, false ), null ) {{ @@ -211,7 +210,6 @@ public void testAllowMajorUpdatesFalse() put( "default-dependency", new String[] {"1.0.0", "1.1.0", "2.0.0"} ); }} ), null, - null, new StubArtifactResolver( new ArtifactStubFactory(), false, false ), null ) {{ @@ -257,7 +255,6 @@ public void testAllowMinorUpdatesFalse() put( "default-dependency", new String[] {"1.0.0", "1.0.1", "1.1.0", "2.0.0"} ); }} ), null, - null, new StubArtifactResolver( new ArtifactStubFactory(), false, false ), null ) {{ @@ -304,7 +301,6 @@ public void testAllowIncrementalUpdatesFalse() put( "default-dependency", new String[] {"1.0.0", "1.0.0-1", "1.0.1", "1.1.0", "2.0.0"} ); }} ), null, - null, new StubArtifactResolver( new ArtifactStubFactory(), false, false ), null ) {{ @@ -353,7 +349,6 @@ public void testVersionsWithQualifiersNotConsideredAsIncrementalUpdates() "1.9.0-rc1"} ); }} ), null, - null, new StubArtifactResolver( new ArtifactStubFactory(), false, false ), null ) {{ diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/ForceReleasesMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/ForceReleasesMojoTest.java index 0c9d66182c..6222b85a49 100644 --- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/ForceReleasesMojoTest.java +++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/ForceReleasesMojoTest.java @@ -66,7 +66,7 @@ public void setUp() throws IllegalAccessException changeRecorder = new TestChangeRecorder(); mojo = new ForceReleasesMojo( mockRepositorySystem(), mockAetherRepositorySystem(), - null, null, new StubArtifactResolver( new ArtifactStubFactory(), + null, new StubArtifactResolver( new ArtifactStubFactory(), false, false ), changeRecorder.asTestMap() ); setVariableValueToObject( mojo, "reactorProjects", emptyList() ); diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/SeparatePatternsForIncludesAnExcludesTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/SeparatePatternsForIncludesAnExcludesTest.java index a4a30b8f20..4ebed3b4bf 100644 --- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/SeparatePatternsForIncludesAnExcludesTest.java +++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/SeparatePatternsForIncludesAnExcludesTest.java @@ -17,7 +17,7 @@ public class SeparatePatternsForIncludesAnExcludesTest public void setUp() throws Exception { - mojo = new AbstractVersionsDependencyUpdaterMojo( null, null, null, null, null, null ) + mojo = new AbstractVersionsDependencyUpdaterMojo( null, null, null, null, null ) { @Override protected void update( ModifiedPomXMLEventReader pom ) diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UpdateParentMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UpdateParentMojoTest.java index 4707286319..e7157704a2 100644 --- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UpdateParentMojoTest.java +++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UpdateParentMojoTest.java @@ -76,7 +76,7 @@ public void setUp() throws IllegalAccessException changeRecorder = new TestChangeRecorder(); artifactResolver = mock( ArtifactResolver.class ); - mojo = new UpdateParentMojo( repositorySystem, aetherRepositorySystem, null, null, + mojo = new UpdateParentMojo( repositorySystem, aetherRepositorySystem, null, artifactResolver, changeRecorder.asTestMap() ) {{ setProject( createProject() ); diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseLatestReleasesMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseLatestReleasesMojoTest.java index f2c7d708e1..4dd3cb1cd8 100644 --- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseLatestReleasesMojoTest.java +++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseLatestReleasesMojoTest.java @@ -63,7 +63,6 @@ public void setUp() throws Exception aetherRepositorySystem, null, null, - null, changeRecorder.asTestMap() ) {{ reactorProjects = emptyList(); diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseLatestVersionsMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseLatestVersionsMojoTest.java index 4152a9019a..f95c8462f4 100644 --- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseLatestVersionsMojoTest.java +++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseLatestVersionsMojoTest.java @@ -76,7 +76,6 @@ public void setUp() throws Exception aetherRepositorySystem, null, null, - null, changeRecorder.asTestMap() ) {{ reactorProjects = emptyList(); diff --git a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseReleasesMojoTest.java b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseReleasesMojoTest.java index 463a00e395..8d855c2e97 100644 --- a/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseReleasesMojoTest.java +++ b/versions-maven-plugin/src/test/java/org/codehaus/mojo/versions/UseReleasesMojoTest.java @@ -67,7 +67,6 @@ public void setUp() throws IllegalAccessException mojo = new UseReleasesMojo( mockRepositorySystem(), mockAetherRepositorySystem(), null, - null, new StubArtifactResolver( new ArtifactStubFactory(), false, false ), changeRecorder.asTestMap() ); setVariableValueToObject( mojo, "reactorProjects", emptyList() );