2014-02-07 33 views
82

在我們公司的CI機器上maven本地存儲庫在每次構建之前被清除。因此,我的構建日誌總是有一堆這樣的噪音禁用maven下載進度指示

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 

有沒有一個選項,我可以禁用下載進度指示?

回答

115

mvn -B ..mvn --batch-mode ...將做的伎倆。

+2

謝謝,這樣做了,我可以擺脫下載/下載的行嗎? – gsf

+0

你可以試試'mvn -q',但是你也不會看到其他消息。可能你可以看看[這裏](http://maven.apache.org/maven-logging.html)。 – khmarbaise

+1

mvn --batch-mode ... | grep -v'Download。* http://'是我有時用來擺脫下載*消息。 –

39

首先,如已經由khmarbaise回答,您應該使用mvn -B啓用批處理模式。

如果您還希望擺脫「下載/下載」行,您可以將相應的記錄器org.apache.maven.cli.transfer.Slf4jMavenTransferListener設置爲高於info的級別。因此,我使用了org.slf4j.simpleLogger.log財產作爲記錄here

只使用命令行,你可以這樣做:

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

或者你可以使用MAVEN_OPTS環境變量描述here

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

注:至於我意識到這隻適用於Maven 3.1及更高版本。

+2

這太好了。也可以將$ org.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener = warn添加到$ MAVEN_HOME/conf/logging/simplelogging.properties中,使其成爲永久的。 – Ben