Maven arroja demasiadas líneas de salida para mi gusto (me gusta la forma Unix: no hay noticias son buenas noticias).
Quiero deshacerme de todas las líneas [INFO], pero no pude encontrar ninguna mención de un argumento o configuración de configuración que controle la verbosidad de Maven.
¿No existe una forma similar a LOG4J de establecer el nivel de registro?
mvn --no-transfer-progress ...
(omvn -ntp
para cortos) debería ser una solución adecuada. Vea mi respuesta a continuación .Respuestas:
Puede probar el modificador -q .
fuente
-q
está demasiado silencioso. Estoy ejecutando maven bajo CI y quiero ver los pasos que toma (para rastrear el progreso), pero los indicadores de descarga están arruinando la pantalla que no es ANSI. ¿Hay alguna forma de apagar solo los indicadores de progreso de descarga?-B
para habilitar el modo por lotes (¡debería tenerlo en su sistema de CI de todos modos!), Y luego configureMAVEN_OPTS="-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn"
para eliminar la información de progreso de las descargas.--batch-mode
(-B
) para que el-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
truco funcione.-q como se dijo anteriormente es lo que necesita. Una alternativa podría ser
-B , --batch-mode Ejecutar en modo no interactivo (por lotes) El modo por lotes es esencial si necesita ejecutar Maven en un entorno de integración continua y no interactivo. Cuando se ejecuta en modo no interactivo, Maven nunca se detendrá para aceptar la entrada del usuario. En su lugar, utilizará valores predeterminados sensibles cuando requiera entrada.
Y también reducirá los mensajes de salida más o menos a lo esencial.
fuente
Con Maven 3.6.1 (abril de 2019) , ahora tiene una opción para suprimir el progreso de la transferencia al descargar / cargar en modo interactivo .
Eso es lo que propuso Ray en los comentarios con MNG-6605 y PR 239 .
fuente
deploy
tareaEnlace oficial: https://maven.apache.org/maven-logging.html
Puede agregar los parámetros de JVM :
Cuidado con las MAYÚSCULAS.
fuente
Utilice las opciones de línea de comandos -q o --quiet
fuente
Si solo desea deshacerse de los
[INFO]
mensajes, también puede hacer:Para suprimir todas las salidas (excepto los errores), puede redirigir
stdout
a/dev/null
con:(Esto solo funciona si usa
bash
(o shells similares) para ejecutar los comandos de Maven).fuente
Maven 3.1.x usa SLF4j para el registro, puede encontrar instrucciones sobre cómo configurarlo en https://maven.apache.org/maven-logging.html
En resumen: modifique
${MAVEN_HOME}/conf/logging/simplelogger.properties
o establezca las mismas propiedades a través de laMAVEN_OPTS
variable de entorno.Por ejemplo: establecer
MAVEN_OPTS
en-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
configura el registro del escucha de transferencia en modo por lotes y-Dorg.slf4j.simpleLogger.defaultLogLevel=warn
establece el nivel de registro predeterminado.fuente
La respuesta existente lo ayuda a filtrar según el nivel de registro que usa
--quiet
. Descubrí que muchos mensajes INFO son útiles para la depuración, sin embargo, los mensajes de registro de artefactos de descarga, como los siguientes, eran ruidosos y no eran útiles.Encontré esta solución:
https://blogs.itemis.com/en/in-a-nutshell-removing-artifact-messages-from-maven-log-output
fuente