deshabilitar la indicación de progreso de descarga de maven


162

En nuestra empresa en las máquinas CI, el repositorio local de Maven se purga antes de cada compilación. Como resultado, mis registros de compilación siempre tienen un ruido como este

Downloading: http://.../artifactory/repo/com/codahale/metrics/metrics-core/3.0.1/metrics-core-3.0.1.jar
4/2122 KB   
8/2122 KB   
12/2122 KB   
16/2122 KB   
18/2122 KB   
18/2122 KB   4/480 KB   
18/2122 KB   8/480 KB   
18/2122 KB   12/480 KB   
18/2122 KB   16/480 KB   
18/2122 KB   16/480 KB   4/1181 KB   
18/2122 KB   16/480 KB   8/1181 KB   
18/2122 KB   16/480 KB   12/1181 KB

¿Existe alguna opción para poder desactivar la indicación de progreso de descarga?

Respuestas:


220

mvn -B ..o mvn --batch-mode ...hará el truco.

Actualizar


3
gracias, esto lo hizo, ¿puedo deshacerme de las líneas de descarga / descarga también?
gsf

Puede intentarlo, mvn -qpero no verá otro mensaje también. Puede ser que puedas echar un vistazo aquí .
khmarbaise

1
mvn - modo por lotes ... | grep -v 'Descargar. * http: //' es lo que a veces uso para deshacerme de los mensajes de descarga *.
Lars Kiesow

¿Funciona para todas las versiones de maven? Parece que en mi caso (versión 2.0.4), Maven todavía imprime líneas feas "descargadas ..." independientemente de agregar la bandera -B.
Kamil

3
@Barett el enlace que proporcionó es solo documentación del complemento de lanzamiento. No menciona en absoluto cómo --batch-modeafecta la producción.
Superole

71

En primer lugar, como ya respondió khmarbaise, debe usar mvn -Bpara habilitar el modo por lotes.

Si también desea deshacerse de las líneas "Descargando / Descargado", puede configurar el registrador correspondiente org.apache.maven.cli.transfer.Slf4jMavenTransferListenera un nivel superior a la información. Por lo tanto, utilicé la org.slf4j.simpleLogger.logpropiedad como se documenta aquí .

Usando solo la línea de comando, puede hacer esto:

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

O puede usar la MAVEN_OPTSvariable de entorno como se describe aquí :

export MAVEN_OPTS=-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn

Nota: Hasta donde yo sé, esto solo funciona para Maven 3.1 y superior.


44
Esto es genial. También se puede agregar org.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warna $ MAVEN_HOME / conf / logging / simplelogging.properties, para que sea permanente.
Ben

Esta solución suprime los mensajes de carga así como las descargas, lo que generalmente no se desea en una deploytarea
Hilikus

Establece el nivel en WARN para que aún sepa si hay un problema. Pero estoy de acuerdo en que sería bueno tener una configuración separada.
Olivier Gérardin


0

Respuesta rápida, use el modo de lote de Maven, agregue lo siguiente a su comando de Maven:

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

Por ejemplo:

mvn deploy -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.