2010-11-05 13 views
15

Estoy tratando de registrar todos los mensajes DEBUG a la consola durante la prueba en maven. Para este propósito creé un archivo src/test/resources/log4j.properties, que va a anular la configuración que ya tengo en src/main/resources/log4j.properties. Lamentablemente, tal anulación no está sucediendo. ¿Por qué y cómo solucionarlo?¿Cómo sobrescribir log4j.properties durante la prueba?

+0

debería funcionar. ;) – Bozho

+1

@Bozho También creo que sí, pero parece que estos dos archivos entran en conflicto. Cuando los tengo funcionan dos NO logging config. Ambos simplemente se ignoran ... – yegor256

+0

Creo que maven solo incluye ambos recursos en la ruta, por lo que log4j se confunde con cuál usar y en su lugar simplemente falla al no mostrar nada. ¿Funciona la solución de Robert? –

Respuesta

3

Debería funcionar como es, y funciona. El problema está en otro lado.

ps. Tuve un lío con los registradores en mi classpath: jog4j, slf4j, logback (de otras dependencias). Según entiendo, todos ellos están en conflicto. Todavía no limpié este desastre, y todavía no sé cómo hacer todos los paquetes para usar una instalación de registro y una configuración.

+1

escribe exactamente – Bozho

+1

Cómo es que no limpiaste el desastre. no sé cómo hacer que todos trabajen juntos y obtengan la respuesta correcta? –

26

Cambie el nombre de su archivo de configuración de prueba a, p. log4j-surefire.properties y configurar log4j para recogerlo durante la ejecución segura:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-surefire-plugin</artifactId> 
    <version>2.6</version> 
    <configuration> 
     <systemPropertyVariables> 
      <log4j.configuration>file:${project.build.testOutputDirectory}/log4j-surefire.properties</log4j.configuration> 
     </systemPropertyVariables> 
    </configuration> 
</plugin> 
+0

He votado positivamente su respuesta, muchas gracias por ello. Desafortunadamente, no es útil en mi caso, ya que el problema no está en la ubicación del archivo, sino en el uso de 'log4j' junto con' slf4j'. – yegor256

+1

Derecha. Entonces deberías publicar tu respuesta y aceptarla. –

Cuestiones relacionadas