You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by gn...@apache.org on 2022/01/28 22:12:20 UTC

[maven-plugin-testing] 01/01: mvn4 aggregator

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

gnodet pushed a commit to branch mvn4
in repository https://gitbox.apache.org/repos/asf/maven-plugin-testing.git

commit c89459480f291f9150f58ba0222edf91ea058dc0
Author: Guillaume Nodet <gn...@gmail.com>
AuthorDate: Fri Jan 28 23:12:16 2022 +0100

    mvn4 aggregator
---
 maven-plugin-testing-harness/pom.xml               |   6 +-
 .../maven/plugin/testing/AbstractMojoTestCase.java |   8 +-
 .../testing/ResolverExpressionEvaluatorStub.java   |   6 +-
 .../testing/stubs/StubArtifactCollector.java       |  93 -------
 .../testing/stubs/StubArtifactRepository.java      | 277 ---------------------
 .../plugin/testing/stubs/StubArtifactResolver.java | 222 -----------------
 pom.xml                                            |   8 +-
 7 files changed, 10 insertions(+), 610 deletions(-)

diff --git a/maven-plugin-testing-harness/pom.xml b/maven-plugin-testing-harness/pom.xml
index 83a190c..f84a363 100644
--- a/maven-plugin-testing-harness/pom.xml
+++ b/maven-plugin-testing-harness/pom.xml
@@ -40,10 +40,6 @@ under the License.
     </dependency>
     <dependency>
       <groupId>org.apache.maven</groupId>
-      <artifactId>maven-compat</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.maven</groupId>
       <artifactId>maven-model</artifactId>
     </dependency>
     <dependency>
@@ -52,7 +48,7 @@ under the License.
     </dependency>
     <dependency>
       <groupId>org.apache.maven</groupId>
-      <artifactId>maven-aether-provider</artifactId>
+      <artifactId>maven-resolver-provider</artifactId>
     </dependency>
 
     <!-- plexus -->
diff --git a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/AbstractMojoTestCase.java b/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/AbstractMojoTestCase.java
index 7296c01..2fcc78a 100644
--- a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/AbstractMojoTestCase.java
+++ b/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/AbstractMojoTestCase.java
@@ -46,7 +46,6 @@ import org.apache.maven.execution.MavenExecutionResult;
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.lifecycle.internal.MojoDescriptorCreator;
 import org.apache.maven.model.Plugin;
-import org.apache.maven.monitor.logging.DefaultLog;
 import org.apache.maven.plugin.Mojo;
 import org.apache.maven.plugin.MojoExecution;
 import org.apache.maven.plugin.PluginParameterExpressionEvaluator;
@@ -54,6 +53,7 @@ import org.apache.maven.plugin.descriptor.MojoDescriptor;
 import org.apache.maven.plugin.descriptor.Parameter;
 import org.apache.maven.plugin.descriptor.PluginDescriptor;
 import org.apache.maven.plugin.descriptor.PluginDescriptorBuilder;
+import org.apache.maven.plugin.internal.MojoLogWrapper;
 import org.apache.maven.plugin.logging.Log;
 import org.apache.maven.project.MavenProject;
 import org.apache.maven.repository.RepositorySystem;
@@ -73,7 +73,6 @@ import org.codehaus.plexus.component.repository.ComponentDescriptor;
 import org.codehaus.plexus.configuration.PlexusConfiguration;
 import org.codehaus.plexus.configuration.xml.XmlPlexusConfiguration;
 import org.codehaus.plexus.context.Context;
-import org.codehaus.plexus.logging.LoggerManager;
 import org.codehaus.plexus.util.InterpolationFilterReader;
 import org.codehaus.plexus.util.ReaderFactory;
 import org.codehaus.plexus.util.ReflectionUtils;
@@ -82,6 +81,7 @@ import org.codehaus.plexus.util.xml.Xpp3Dom;
 import org.codehaus.plexus.util.xml.Xpp3DomBuilder;
 
 import com.google.inject.Module;
+import org.slf4j.LoggerFactory;
 
 /**
  * TODO: add a way to use the plugin POM for the lookup so that the user doesn't have to provide the a:g:v:goal
@@ -407,9 +407,7 @@ public abstract class AbstractMojoTestCase
 
         Mojo mojo = lookup( Mojo.class, groupId + ":" + artifactId + ":" + version + ":" + goal );
 
-        LoggerManager loggerManager = getContainer().lookup( LoggerManager.class );
-        
-        Log mojoLogger = new DefaultLog( loggerManager.getLoggerForComponent( Mojo.ROLE ) );
+        Log mojoLogger = new MojoLogWrapper( LoggerFactory.getLogger( mojo.getClass() ) );
 
         mojo.setLog( mojoLogger );
 
diff --git a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/ResolverExpressionEvaluatorStub.java b/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/ResolverExpressionEvaluatorStub.java
index 5192d4b..90ed1dc 100644
--- a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/ResolverExpressionEvaluatorStub.java
+++ b/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/ResolverExpressionEvaluatorStub.java
@@ -24,8 +24,7 @@ import java.io.File;
 import org.codehaus.plexus.PlexusTestCase;
 import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluationException;
 import org.codehaus.plexus.component.configurator.expression.ExpressionEvaluator;
-import org.apache.maven.artifact.repository.DefaultArtifactRepository;
-import org.apache.maven.artifact.repository.layout.DefaultRepositoryLayout;
+import org.eclipse.aether.repository.LocalRepository;
 
 /**
  * Stub for {@link ExpressionEvaluator}
@@ -102,8 +101,7 @@ public class ResolverExpressionEvaluatorStub
         else if ( "localRepository".equals( expression ) )
         {
             File localRepo = new File( PlexusTestCase.getBasedir(), "target/local-repo" );
-            return new DefaultArtifactRepository( "localRepository", "file://" + localRepo.getAbsolutePath(),
-                                                  new DefaultRepositoryLayout() );
+            return new LocalRepository( "file://" + localRepo.getAbsolutePath() );
         }
         else
         {
diff --git a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/stubs/StubArtifactCollector.java b/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/stubs/StubArtifactCollector.java
deleted file mode 100644
index c8e7cbe..0000000
--- a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/stubs/StubArtifactCollector.java
+++ /dev/null
@@ -1,93 +0,0 @@
-package org.apache.maven.plugin.testing.stubs;
-
-/*
- * 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 java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
-import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.resolver.ArtifactCollector;
-import org.apache.maven.artifact.resolver.ArtifactResolutionException;
-import org.apache.maven.artifact.resolver.ArtifactResolutionRequest;
-import org.apache.maven.artifact.resolver.ArtifactResolutionResult;
-import org.apache.maven.artifact.resolver.ResolutionListener;
-import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
-import org.apache.maven.repository.legacy.resolver.conflict.ConflictResolver;
-
-/**
- * @author <a href="mailto:brianf@apache.org">Brian Fox</a>
- */
-public class StubArtifactCollector
-    implements ArtifactCollector
-{
-    /**
-     * Default constructor
-     */
-    public StubArtifactCollector()
-    {
-        super();
-    }
-
-    @Override
-    public ArtifactResolutionResult collect( Set<Artifact> artifacts, Artifact originatingArtifact,
-                                             Map managedVersions, ArtifactResolutionRequest repositoryRequest,
-                                             ArtifactMetadataSource source, ArtifactFilter filter,
-                                             List<ResolutionListener> listeners,
-                                             List<ConflictResolver> conflictResolvers )
-    {
-        return new ArtifactResolutionResult();
-    }
-
-    @Override
-    public ArtifactResolutionResult collect( Set<Artifact> artifacts, Artifact originatingArtifact,
-                                             Map managedVersions, ArtifactRepository localRepository,
-                                             List<ArtifactRepository> remoteRepositories,
-                                             ArtifactMetadataSource source, ArtifactFilter filter,
-                                             List<ResolutionListener> listeners,
-                                             List<ConflictResolver> conflictResolvers )
-    {
-        return new ArtifactResolutionResult();
-    }
-
-    @Override
-    public ArtifactResolutionResult collect( Set<Artifact> artifacts, Artifact originatingArtifact,
-                                             Map managedVersions, ArtifactRepository localRepository,
-                                             List<ArtifactRepository> remoteRepositories,
-                                             ArtifactMetadataSource source, ArtifactFilter filter,
-                                             List<ResolutionListener> listeners )
-    {
-        return new ArtifactResolutionResult();
-    }
-
-    @Override
-    public ArtifactResolutionResult collect( Set<Artifact> artifacts, Artifact originatingArtifact,
-                                             ArtifactRepository localRepository,
-                                             List<ArtifactRepository> remoteRepositories,
-                                             ArtifactMetadataSource source, ArtifactFilter filter,
-                                             List<ResolutionListener> listeners )
-        throws ArtifactResolutionException
-    {
-        return new ArtifactResolutionResult();
-    }
-
-}
diff --git a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/stubs/StubArtifactRepository.java b/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/stubs/StubArtifactRepository.java
deleted file mode 100644
index 0d63904..0000000
--- a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/stubs/StubArtifactRepository.java
+++ /dev/null
@@ -1,277 +0,0 @@
-package org.apache.maven.plugin.testing.stubs;
-
-/*
- * 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 org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.metadata.ArtifactMetadata;
-import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.repository.ArtifactRepositoryPolicy;
-import org.apache.maven.artifact.repository.Authentication;
-import org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout;
-import org.apache.maven.repository.Proxy;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-/**
- * @author <a href="mailto:brianf@apache.org">Brian Fox</a>
- */
-public class StubArtifactRepository
-    implements ArtifactRepository
-{
-    private String baseDir = null;
-
-    /**
-     * Default constructor
-     *
-     * @param dir the basedir
-     */
-    public StubArtifactRepository( String dir )
-    {
-        baseDir = dir;
-    }
-
-    /**
-     * @return the <code>artifactId</code>.
-     * @see org.apache.maven.artifact.repository.ArtifactRepository#pathOf(org.apache.maven.artifact.Artifact)
-     */
-    @Override
-    public String pathOf( Artifact artifact )
-    {
-        return artifact.getId();
-    }
-
-    /**
-     * @return <code>null</code>.
-     * @see org.apache.maven.artifact.repository.ArtifactRepository#pathOfRemoteRepositoryMetadata(org.apache.maven.artifact.metadata.ArtifactMetadata)
-     */
-    @Override
-    public String pathOfRemoteRepositoryMetadata( ArtifactMetadata artifactMetadata )
-    {
-        return null;
-    }
-
-    /**
-     * @return the filename of this metadata on the local repository.
-     * @see org.apache.maven.artifact.repository.ArtifactRepository#pathOfLocalRepositoryMetadata(org.apache.maven.artifact.metadata.ArtifactMetadata, org.apache.maven.artifact.repository.ArtifactRepository)
-     */
-    @Override
-    public String pathOfLocalRepositoryMetadata( ArtifactMetadata metadata, ArtifactRepository repository )
-    {
-        return metadata.getLocalFilename( repository );
-    }
-
-    /**
-     * @return <code>null</code>.
-     * @see org.apache.maven.artifact.repository.ArtifactRepository#getUrl()
-     */
-    @Override
-    public String getUrl()
-    {
-        return null;
-    }
-
-    /**
-     * @return <code>basedir</code>.
-     * @see org.apache.maven.artifact.repository.ArtifactRepository#getBasedir()
-     */
-    @Override
-    public String getBasedir()
-    {
-        return baseDir;
-    }
-
-    /**
-     * @return <code>null</code>.
-     * @see org.apache.maven.artifact.repository.ArtifactRepository#getProtocol()
-     */
-    @Override
-    public String getProtocol()
-    {
-        return null;
-    }
-
-    /**
-     * @return <code>null</code>.
-     * @see org.apache.maven.artifact.repository.ArtifactRepository#getId()
-     */
-    @Override
-    public String getId()
-    {
-        return null;
-    }
-
-    /**
-     * @return <code>null</code>.
-     * @see org.apache.maven.artifact.repository.ArtifactRepository#getSnapshots()
-     */
-    @Override
-    public ArtifactRepositoryPolicy getSnapshots()
-    {
-        return null;
-    }
-
-    /**
-     * @return <code>null</code>.
-     * @see org.apache.maven.artifact.repository.ArtifactRepository#getReleases()
-     */
-    @Override
-    public ArtifactRepositoryPolicy getReleases()
-    {
-        return null;
-    }
-
-    /**
-     * @return <code>null</code>.
-     * @see org.apache.maven.artifact.repository.ArtifactRepository#getLayout()
-     */
-    @Override
-    public ArtifactRepositoryLayout getLayout()
-    {
-        return null;
-    }
-
-    /**
-     * @return <code>null</code>.
-     * @see org.apache.maven.artifact.repository.ArtifactRepository#getKey()
-     */
-    @Override
-    public String getKey()
-    {
-        return null;
-    }
-
-    /**
-     * @return <code>false</code>.
-     * @see org.apache.maven.artifact.repository.ArtifactRepository#isUniqueVersion()
-     */
-    @Override
-    public boolean isUniqueVersion()
-    {
-        return false;
-    }
-
-    /**
-     * By default, do nothing.
-     *
-     * @see org.apache.maven.artifact.repository.ArtifactRepository#setBlacklisted(boolean)
-     */
-    @Override
-    public void setBlacklisted( boolean blackListed )
-    {
-        // nop
-    }
-
-    /**
-     * @return <code>false</code>.
-     * @see org.apache.maven.artifact.repository.ArtifactRepository#isBlacklisted()
-     */
-    @Override
-    public boolean isBlacklisted()
-    {
-        return false;
-    }
-
-    @Override
-    public Artifact find( Artifact artifact )
-    {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
-    @Override
-    public Authentication getAuthentication()
-    {
-        return null;
-    }
-
-    @Override
-    public Proxy getProxy()
-    {
-        return null;
-    }
-
-    @Override
-    public void setAuthentication( Authentication authentication )
-    {
-
-    }
-
-    @Override
-    public void setId( String id )
-    {
-
-    }
-
-    @Override
-    public void setLayout( ArtifactRepositoryLayout layout )
-    {
-
-    }
-
-    @Override
-    public void setProxy( Proxy proxy )
-    {
-
-    }
-
-    @Override
-    public void setReleaseUpdatePolicy( ArtifactRepositoryPolicy policy )
-    {
-
-    }
-
-    @Override
-    public void setSnapshotUpdatePolicy( ArtifactRepositoryPolicy policy )
-    {
-
-    }
-
-    @Override
-    public void setUrl( String url )
-    {
-
-    }
-
-    @Override
-    public List<String> findVersions( Artifact artifact )
-    {
-        return Collections.emptyList();
-    }
-
-    @Override
-    public boolean isProjectAware()
-    {
-        return false;
-    }
-
-    @Override
-    public List<ArtifactRepository> getMirroredRepositories()
-    {
-        return new ArrayList<>( 0 );
-    }
-
-    @Override
-    public void setMirroredRepositories( List<ArtifactRepository> artifactRepositories )
-    {
-        // no op
-    }
-}
diff --git a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/stubs/StubArtifactResolver.java b/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/stubs/StubArtifactResolver.java
deleted file mode 100644
index b9ea73a..0000000
--- a/maven-plugin-testing-harness/src/main/java/org/apache/maven/plugin/testing/stubs/StubArtifactResolver.java
+++ /dev/null
@@ -1,222 +0,0 @@
-package org.apache.maven.plugin.testing.stubs;
-
-/*
- * 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 java.io.IOException;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.apache.maven.artifact.Artifact;
-import org.apache.maven.artifact.metadata.ArtifactMetadataSource;
-import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.resolver.ArtifactNotFoundException;
-import org.apache.maven.artifact.resolver.ArtifactResolutionException;
-import org.apache.maven.artifact.resolver.ArtifactResolutionRequest;
-import org.apache.maven.artifact.resolver.ArtifactResolutionResult;
-import org.apache.maven.artifact.resolver.ArtifactResolver;
-import org.apache.maven.artifact.resolver.ResolutionListener;
-import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
-import org.apache.maven.plugin.testing.ArtifactStubFactory;
-import org.apache.maven.wagon.events.TransferListener;
-
-/**
- * Stub resolver. The constructor allows the specification of the exception to throw so that handling can be tested too.
- *
- * @author <a href="mailto:brianf@apache.org">Brian Fox</a>
- */
-public class StubArtifactResolver
-    implements ArtifactResolver
-{
-    private boolean throwArtifactResolutionException;
-
-    private boolean throwArtifactNotFoundException;
-
-    private ArtifactStubFactory factory;
-
-    /**
-     * Default constructor
-     *
-     * @param factory
-     * @param throwArtifactResolutionException
-     * @param throwArtifactNotFoundException
-     */
-    public StubArtifactResolver( ArtifactStubFactory factory, boolean throwArtifactResolutionException,
-                                boolean throwArtifactNotFoundException )
-    {
-        this.throwArtifactNotFoundException = throwArtifactNotFoundException;
-        this.throwArtifactResolutionException = throwArtifactResolutionException;
-        this.factory = factory;
-    }
-
-    /**
-     * Creates dummy file and sets it in the artifact to simulate resolution
-     *
-     * @see org.apache.maven.artifact.resolver.ArtifactResolver#resolve(org.apache.maven.artifact.Artifact, java.util.List, org.apache.maven.artifact.repository.ArtifactRepository)
-     */
-    @Override
-    public void resolve( Artifact artifact, List<ArtifactRepository> remoteRepositories,
-                         ArtifactRepository localRepository )
-        throws ArtifactResolutionException, ArtifactNotFoundException
-    {
-        if ( !this.throwArtifactNotFoundException && !this.throwArtifactResolutionException )
-        {
-            try
-            {
-                if ( factory != null )
-                {
-                    factory.setArtifactFile( artifact, factory.getWorkingDir() );
-                }
-            }
-            catch ( IOException e )
-            {
-                throw new ArtifactResolutionException( "IOException: " + e.getMessage(), artifact, e );
-            }
-        }
-        else
-        {
-            if ( throwArtifactResolutionException )
-            {
-                throw new ArtifactResolutionException( "Catch!", artifact );
-            }
-
-            throw new ArtifactNotFoundException( "Catch!", artifact );
-        }
-    }
-
-    /**
-     * @return <code>null</code>.
-     * @see org.apache.maven.artifact.resolver.ArtifactResolver#resolveTransitively(java.util.Set, org.apache.maven.artifact.Artifact, java.util.List, org.apache.maven.artifact.repository.ArtifactRepository, org.apache.maven.artifact.metadata.ArtifactMetadataSource)
-     */
-    @Override
-    public ArtifactResolutionResult resolveTransitively( Set<Artifact> artifacts, Artifact originatingArtifact,
-                                                         List<ArtifactRepository> remoteRepositories,
-                                                         ArtifactRepository localRepository,
-                                                         ArtifactMetadataSource source )
-        throws ArtifactResolutionException, ArtifactNotFoundException
-    {
-        return null;
-    }
-
-    /**
-     * @return <code>null</code>.
-     * @see org.apache.maven.artifact.resolver.ArtifactResolver#resolveTransitively(java.util.Set, org.apache.maven.artifact.Artifact, java.util.List, org.apache.maven.artifact.repository.ArtifactRepository, org.apache.maven.artifact.metadata.ArtifactMetadataSource, java.util.List)
-     */
-    @Override
-    public ArtifactResolutionResult resolveTransitively( Set<Artifact> artifacts, Artifact originatingArtifact,
-                                                         List<ArtifactRepository> remoteRepositories,
-                                                         ArtifactRepository localRepository,
-                                                         ArtifactMetadataSource source,
-                                                         List<ResolutionListener> listeners )
-        throws ArtifactResolutionException, ArtifactNotFoundException
-    {
-        return null;
-    }
-
-    /**
-     * @return <code>null</code>.
-     * @see org.apache.maven.artifact.resolver.ArtifactResolver#resolveTransitively(java.util.Set, org.apache.maven.artifact.Artifact, org.apache.maven.artifact.repository.ArtifactRepository, java.util.List, org.apache.maven.artifact.metadata.ArtifactMetadataSource, org.apache.maven.artifact.resolver.filter.ArtifactFilter)
-     */
-    @Override
-    public ArtifactResolutionResult resolveTransitively( Set<Artifact> artifacts, Artifact originatingArtifact,
-                                                         ArtifactRepository localRepository,
-                                                         List<ArtifactRepository> remoteRepositories,
-                                                         ArtifactMetadataSource source, ArtifactFilter filter )
-        throws ArtifactResolutionException, ArtifactNotFoundException
-    {
-        return null;
-    }
-
-    /**
-     * @return <code>null</code>.
-     * @see org.apache.maven.artifact.resolver.ArtifactResolver#resolveTransitively(java.util.Set, org.apache.maven.artifact.Artifact, java.util.Map, org.apache.maven.artifact.repository.ArtifactRepository, java.util.List, org.apache.maven.artifact.metadata.ArtifactMetadataSource)
-     */
-    @Override
-    public ArtifactResolutionResult resolveTransitively( Set<Artifact> artifacts, Artifact originatingArtifact,
-                                                         Map managedVersions, ArtifactRepository localRepository,
-                                                         List<ArtifactRepository> remoteRepositories,
-                                                         ArtifactMetadataSource source )
-        throws ArtifactResolutionException, ArtifactNotFoundException
-    {
-        return null;
-    }
-
-    /**
-     * @return <code>null</code>.
-     * @see org.apache.maven.artifact.resolver.ArtifactResolver#resolveTransitively(java.util.Set, org.apache.maven.artifact.Artifact, java.util.Map, org.apache.maven.artifact.repository.ArtifactRepository, java.util.List, org.apache.maven.artifact.metadata.ArtifactMetadataSource, org.apache.maven.artifact.resolver.filter.ArtifactFilter)
-     */
-    @Override
-    public ArtifactResolutionResult resolveTransitively( Set<Artifact> artifacts, Artifact originatingArtifact,
-                                                         Map managedVersions, ArtifactRepository localRepository,
-                                                         List<ArtifactRepository> remoteRepositories,
-                                                         ArtifactMetadataSource source, ArtifactFilter filter )
-        throws ArtifactResolutionException, ArtifactNotFoundException
-    {
-        return null;
-    }
-
-    /**
-     * @return <code>null</code>.
-     * @see org.apache.maven.artifact.resolver.ArtifactResolver#resolveTransitively(java.util.Set, org.apache.maven.artifact.Artifact, java.util.Map, org.apache.maven.artifact.repository.ArtifactRepository, java.util.List, org.apache.maven.artifact.metadata.ArtifactMetadataSource, org.apache.maven.artifact.resolver.filter.ArtifactFilter, java.util.List)
-     */
-    @Override
-    public ArtifactResolutionResult resolveTransitively( Set<Artifact> artifacts, Artifact originatingArtifact,
-                                                         Map managedVersions, ArtifactRepository localRepository,
-                                                         List<ArtifactRepository> remoteRepositories,
-                                                         ArtifactMetadataSource source, ArtifactFilter filter,
-                                                         List<ResolutionListener> listeners )
-        throws ArtifactResolutionException, ArtifactNotFoundException
-    {
-        return null;
-    }
-
-    /**
-     * By default, do nothing.
-     *
-     * @see org.apache.maven.artifact.resolver.ArtifactResolver#resolveAlways(org.apache.maven.artifact.Artifact, java.util.List, org.apache.maven.artifact.repository.ArtifactRepository)
-     */
-    @Override
-    public void resolveAlways( Artifact artifact, List<ArtifactRepository> remoteRepositories,
-                               ArtifactRepository localRepository )
-        throws ArtifactResolutionException, ArtifactNotFoundException
-    {
-        // nop
-    }
-
-    @Override
-    public void resolve( Artifact artifact, List<ArtifactRepository> remoteRepositories,
-                         ArtifactRepository localRepository, TransferListener downloadMonitor )
-        throws ArtifactResolutionException, ArtifactNotFoundException
-    {
-        // TODO Auto-generated method stub
-        
-    }
-    
-    public ArtifactResolutionResult collect( ArtifactResolutionRequest request )
-    {
-        return null;
-    }
-
-    @Override
-    public ArtifactResolutionResult resolve( ArtifactResolutionRequest request )
-    {
-        return null;
-    }
-}
diff --git a/pom.xml b/pom.xml
index e2fa417..38057e0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -25,7 +25,7 @@ under the License.
   <parent>
     <artifactId>maven-parent</artifactId>
     <groupId>org.apache.maven</groupId>
-    <version>34</version>
+    <version>35-SNAPSHOT</version>
     <relativePath/>
   </parent>
 
@@ -129,9 +129,9 @@ under the License.
 
   <properties>
     <surefire.version>2.22.2</surefire.version>
-    <mavenVersion>3.2.5</mavenVersion>
+    <mavenVersion>4.0.0-alpha-1-SNAPSHOT</mavenVersion>
     <maven.site.path>plugin-testing-archives/LATEST</maven.site.path>
-    <javaVersion>7</javaVersion>
+    <javaVersion>8</javaVersion>
     <project.build.outputTimestamp>2020-04-07T21:04:00Z</project.build.outputTimestamp>
   </properties>
 
@@ -165,7 +165,7 @@ under the License.
       </dependency>    
       <dependency>
         <groupId>org.apache.maven</groupId>
-        <artifactId>maven-aether-provider</artifactId>
+        <artifactId>maven-resolver-provider</artifactId>
         <version>${mavenVersion}</version>
         <scope>provided</scope>
       </dependency>