java - commons - excepción de búsqueda de componentes con org.apache.maven.repository.RepositorySystem en las pruebas del complemento de Maven
gradle publish to maven local (2)
Estoy intentando usar la versión 2.1 de maven-plugin-testing-harness
con el siguiente caso de prueba:
public class FooTest extends AbstractMojoTestCase {
@Override
protected void setUp() throws Exception {
super.setUp();
}
public void testSomething() throws Exception {
// todo
}
}
La prueba falla en la llamada setUp()
:
org.codehaus.plexus.component.repository.exception.ComponentLookupException: java.util.NoSuchElementException
role: org.apache.maven.repository.RepositorySystem
roleHint:
at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:257)
at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:245)
at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:239)
at org.codehaus.plexus.PlexusTestCase.lookup(PlexusTestCase.java:206)
at org.apache.maven.plugin.testing.AbstractMojoTestCase.setUp(AbstractMojoTestCase.java:118)
at foo.FooTest.setUp(FooTest.java:54)
Estas dependencias las tengo en el pom.xml
:
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-plugin-api</artifactId>
<version>3.0.5</version>
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-model</artifactId>
<version>3.0.5</version>
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-core</artifactId>
<version>3.0.5</version>
</dependency>
<dependency>
<groupId>org.apache.maven.plugin-testing</groupId>
<artifactId>maven-plugin-testing-harness</artifactId>
<version>2.1</version>
<scope>test</scope>
</dependency>
¿Algunas ideas?
Dejando esto aquí para cualquiera que se encuentre con este problema en el futuro:
La respuesta de smoke funciona, pero asegúrese de que las versiones de las dependencias incluidas en yegor256 en la pregunta original coincidan. Agregar org.apache.maven: maven-compat no me funcionó hasta que modifiqué esas 4 dependencias para tener también la versión 3.0.5.
Recientemente me enfrenté a la misma excepción. Después de investigar un poco, descubrí que el complemento de maven-compat resuelve el problema:
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-compat</artifactId>
<version>3.0.5</version>
<scope>test</scope>
</dependency>