Pregunta

Maven arroja demasiadas líneas de salida para mi gusto (me gusta la forma Unix:La ausencia de malas 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 que controle la detalle de Maven.

¿No existe una forma similar a LOG4J de establecer el nivel de registro?

¿Fue útil?

Solución

Puedes probar el -q cambiar.

-q,--quiet Salida silenciosa: solo muestra errores

Otros consejos

-q como se dijo anteriormente es lo que necesitas.Una alternativa podría ser

-B, --por lotesEjecutar en modo no interactivo (lote) El modo de lotes es esencial si necesita ejecutar Maven en un entorno de integración continuo no interactivo.Cuando se ejecuta en modo no interactivo, Maven nunca se detendrá para aceptar entradas del usuario.En su lugar, utilizará valores predeterminados sensatos cuando requiera entrada.

Y también reducirá los mensajes de salida más o menos a lo esencial.

Utilice las opciones de línea de comandos -q o --quiet

Enlace oficial:https://maven.apache.org/maven-logging.html

Puedes agregar en el JVM parámetros:

-Dorg.slf4j.simpleLogger.defaultLogLevel=WARN

Cuidado con las MAYÚSCULAS.

Maven 3.1.x usa SLF4j para iniciar sesión, puede encontrar instrucciones sobre cómo configurarlo en https://maven.apache.org/maven-logging.html

En breve:Ya sea modificar ${MAVEN_HOME}/conf/logging/simplelogger.properties, o establecer las mismas propiedades a través del MAVEN_OPTS Variable ambiental.

Por ejemplo:configuración MAVEN_OPTS a -Dorg.slf4j.simpleLogger.log.org.apache.maven.cl‌​i.transfer.Slf4jMave‌​nTransferListener=wa‌​rn configura el registro del escucha de transferencia en modo por lotes, y -Dorg.slf4j.simpleLogger.defaultLogLevel=warn establece el nivel de registro predeterminado.

Si sólo quieres deshacerte de [INFO] mensajes que también podrías hacer:

mvn ... | fgrep -v "[INFO]"

Para suprimir todo salidas (excepto errores) que podrías redirigir stdout a /dev/null con:

mvn ... 1>/dev/null

(Esto sólo funciona si usas bash (o shells similares) para ejecutar los comandos de Maven).

La respuesta existente le ayuda a filtrar según el nivel de registro utilizando --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.

Downloading: http://nexus:8081/nexus/content/groups/public/org/apache/maven/plugins/maven-compiler-plugin/maven-metadata.xml

Encontré esta solución:

https://blogs.itemis.com/en/in-a-nutshell-removing-artifact-messages-from-maven-log-output

mvn clean install -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn

Mi problema es que -q es demasiado silencioso.Estoy ejecutando maven bajo CI

Con Maven 3.6.1 (abril de 2019), ahora tienes un Opción para suprimir el progreso de la transferencia al descargar/cargar en modo interactivo..

mvn --no-transfer-progress ....

o en resumen:

mvn -ntp ... ....

Eso es lo que Rayo propuesto en los comentarios con MNG-6605 y PR 239.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top