tutorial para oxygen instalar for eclipse maven m2e

para - maven for eclipse photon



La dependencia para proyectar foo con el tipo test-jar no es totalmente compatible. (2)

En mi proyecto de Maven estoy usando una dependencia de tipo test-jar que m2e no le gusta y da la siguiente advertencia.

"La dependencia para proyectar foo con el tipo test-jar no es totalmente compatible. Pueden surgir problemas de Classpath y / o implementación. Probar Maven-> Deshabilitar área de trabajo"

¿Por qué surge este problema y por qué la inhabilitación de la resolución del área de trabajo lo solucionaría?



He intentado hacer que esta advertencia desaparezca con el truco a continuación, sin embargo, tiene el efecto secundario de que es imposible ejecutar pruebas desde eclipse debido a la clase de ruta para las pruebas en eclipse cuando el código de ejecución no se configura correctamente. Estoy publicando aquí con la esperanza de que alguien pueda mejorar este truco y hacer que funcione.

La creación de un perfil en el archivo pom se desactiva cuando está en eclipse pero se activa automáticamente cuando se ejecuta maven fuera de eclipse.

<profiles> <profile> <id>test-jars</id> <activation> <property> <name>!m2e.version</name> </property> </activation> <dependencies> <dependency> <groupId>com.example</groupId> <artifactId>foo</artifactId> <version>${project.version}</version> <type>test-jar</type> <scope>test</scope> </dependency> <dependency> <groupId>com.example</groupId> <artifactId>bar</artifactId> <version>${project.version}</version> <type>test-jar</type> <scope>test</scope> </dependency> </dependencies> </profile> </profiles>

Dentro del eclipse, se define la propiedad m2e.version, por lo que m2e ignora las dependencias de prueba-jar y no se genera ninguna advertencia. Sin embargo, cuando se ejecuta maven en la línea de comandos, el perfil se activa porque no hay una propiedad m2e.version y, por lo tanto, la advertencia desaparece.