2010-08-09 43 views
9

是否有可能通過未使用管道運算符來獲取maven-build過程的日誌文件?我的意思是,通常來如該控制檯窗口中的輸出:通過maven獲取構建日誌文件

[INFO] ------------------------------------------------------------------------ 
[INFO] Building base_project 01.00.000 
[INFO] ------------------------------------------------------------------------ 
[WARNING] While downloading sun-javamail:mail:1.3.1 
    This artifact has been relocated to javax.mail:mail:1.3.1. 
    http://maven.apache.org/guides/mini/guide-coping-with-sun-jars.html 
[INFO] 
[INFO] --- maven-clean-plugin:2.4.1:clean (CLEAN TARGET FOLDER) 

我知道要改變從行家的輸出電平的可能性,但不是一個選項在日誌文件中得到這個。每一次嘗試通過log4j.properties文件得到這個工作對我來說都不起作用。我已經將它們放在src/main/resources中的corporate-pom-project中,也放在了child-pom-projects中。將文件包含到classpath和maven-directory似乎也不起作用。 無論如何,是否有可能通過log4j-configuration將mavens輸出到具有指定調試級別的日誌文件中,最適合。我認爲這是可能的,但沒有任何我嘗試似乎工作。 有沒有人對我提過這個問題的提示或答案?

由於提前, tommyboy66

回答

11

在Maven的2.x的不支持,你必須管道輸出到一個文件:

mvn goal > build.log 

但可能在Maven的3.X( MNG-4157 MNG-3183 ):

-l,--log-file <arg>     Log file to where all build output 
             will go. 
+0

謝謝您的回覆,帕斯卡。我想知道,我認爲這是不可能的。 Maven是一個非常棒的配置管理工具,但這實際上是一個弱點。具有定製輸出的日誌文件在我看來是構建過程的主要部分。另外maven已經使用log4j。無論如何,我必須進一步與管道運營商。 – danny 2010-08-10 06:34:28

+2

不要忘記(如果你不在窗戶上):'mvn goal | tee build.log' – 2010-08-10 20:02:21

+1

或者在Windows上,你可以使用cygwin或gnuwin32來獲取tee(以及其他很多有用的東西)...... – andreas 2012-08-27 07:58:25

相關問題