Comment configurer la journalisation pour la génération maven? Le journal généré par maven ne fournit pas d'informations suffisantes, telles que l'horodatage avec chaque instruction de journal. Où/quel fichier de configuration de log maven utilise-t-il?Configuration du fichier journal maven
Répondre
Cela semble encore un peu problème fermé Maven, comme vous pouvez le voir sur:
https://issues.apache.org/jira/browse/MNG-519
La solution fournie semble pas trop mal, mais vous devez modifier l'installation de Maven.
Vous pouvez être conscient de cela, et il n'imprimera pas les dates, mais utiliser mvn -X
pour imprimer une sortie prolixe. En outre, vous pouvez toujours diriger la sortie de maven vers un autre utilitaire (en supposant que votre environnement shell contienne des outils compétents à mi-chemin). Par exemple mvn -X clean | awk '{print "("d")"$0}' "d=$(date)"
imprime une date avant chaque ligne dans maven. Je n'ai pas pris la peine de formater la date, mais cela se fait facilement avec les arguments de l'exécutable date
. Notez que cela ne fonctionnera pas vraiment pour les commandes maven qui nécessitent une entrée utilisateur interactive, telle que maven archetype:generate
.
La réponse fournie par @whaley est une bonne direction. Cependant, le $ (date) est évalué seulement une fois au début et reste ensuite le même. je devais utiliser une approche mentionnée dans Is there a Unix utility to prepend timestamps to stdin?:
mvn -X <goals> | awk '{ print strftime("%Y-%m-%d %H:%M:%S"), $0; }'
Maven dans la version 3.1 et 3.2 permettent la configuration de l'enregistreur à base de SLF4J plus simple. Vous pouvez spécifier "-l logfile" sur la ligne de commande, et la configuration par défaut du SimpleLogger est dans le fichier de configuration conf/logging/simplelogger.properties
.
Si vous souhaitez activer les horodatages par défaut (en millisecondes depuis le démarrage), vous pouvez simplement modifier la propriété de ce fichier: org.slf4j.simpleLogger.showDateTime=true
.
Comme suggéré par @eckes, le fichier de configuration de journalisation par défaut est disponible dans /conf/logging/simplelogger.properties, à partir de Maven 3.1.0.
Modifier la valeur de la propriété "org.slf4j.simpleLogger.showDateTime" à "true"
org.slf4j.simpleLogger.showDateTime=true
Pour changer DateTimeFormat, par défaut est le temps par rapport en millisecondes.
Ajouter la ligne ci-dessous dans le fichier simplelogger.properties.
org.slf4j.simpleLogger.dateTimeFormat=HH:mm:ss:SSS
Références:
exploitation forestière Maven: https://maven.apache.org/maven-logging.html
DateFormats: http://docs.oracle.com/javase/1.5.0/docs/api/java/text/SimpleDateFormat.html
Mais '-l' est "fichier journal où tout ira construire la sortie", pas la configuration de l'exploitation forestière. – lexicore
@lexicore oui, c'est ce que j'ai dit "-l logfile" – eckes
Je cherche à changer le journal de construction dans un fichier, mvn -l fichier journal fonctionne pour moi. – IcyBrk