2010-08-09 5 views
9

est-il possible d'obtenir un fichier journal du processus maven-build sans utiliser un opérateur de tuyau? Je veux dire la sortie qui vient normalement dans la fenêtre de la console comme ça:Obtenir un fichier journal de construction par 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) 

Je sais que la possibilité de changer le niveau de sortie de Maven, mais pas une option pour obtenir cela dans un fichier journal. Chaque tentative pour obtenir ce travail par un fichier log4j.properties ne fonctionne pas pour moi. Je les ai déjà mis dans corporate-pom-project dans src/main/resources et aussi dans child-pom-projects. Inclure le fichier dans classpath et dans maven-directory ne semble pas fonctionner non plus. Quoi qu'il en soit, est-il possible d'obtenir une sortie mavens dans un fichier journal avec le niveau de débogage spécifié, ce qui convient le mieux à la configuration log4j. Je pense que c'est possible, mais rien que j'ai essayé semble fonctionner. Y at-il quelqu'un qui a un indice ou une réponse à cette question pour moi?

Merci à l'avance, tommyboy66

Répondre

11

Non pris en charge dans Maven 2.x, vous devez diriger la sortie dans un fichier:

mvn goal > build.log 

Mais possible 3.x Maven ( MNG-4157 , MNG-3183 ):

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

Merci pour votre réponse, Pascal. Je me demande et je pensais que ce n'est pas vraiment possible. Maven est un excellent outil de gestion de configuration, mais c'est vraiment une faiblesse. Avoir un fichier journal avec sortie personnalisée est à mon avis une partie principale du processus de construction. Maven utilise déjà log4j. Quoi qu'il en soit, je dois aller plus loin avec le tuyau-opérateur. – danny

+2

N'oubliez pas (si vous n'êtes pas sur Windows): 'mvn goal | tee build.log' –

+1

ou sur windows vous pouvez utiliser cygwin ou gnuwin32 pour obtenir tee (et beaucoup d'autres choses utiles) ... – andreas

Questions connexes