Domanda

Come posso configurare la registrazione per costruire Maven? Il registro che genera Maven non fornisce informazioni sufficienti, come data e ora, con ogni affermazione di log. Dove / cosa log file di configurazione utilizzi Maven?

È stato utile?

Soluzione

Questo sembra ancora un po ' chiuso problema in Maven, come si può vedere su:

https://issues.apache.org/jira/browse/MNG-519

L'aspetto soluzione fornita non è male, ma è necessario modificare l'installazione Maven.

Altri suggerimenti

Si può essere consapevoli di questo, e non stamperà date, ma l'uso mvn -X per stampare verbose output.

Inoltre, è sempre possibile inviare l'output di Maven a qualche altro programma di utilità (supponendo che il vostro ambiente di shell contiene strumenti metà competenti). Per le stampe esempio mvn -X clean | awk '{print "("d")"$0}' "d=$(date)" fuori una data prima di ogni riga di Maven. Non mi preoccupai formattazione della data, ma questo è fatto facilmente con argomenti per l'eseguibile date. Si noti che questo non è proprio il lavoro per i comandi Maven che richiedono l'input dell'utente interattivo, come maven archetype:generate.

Risposta fornita da @whaley è una direzione buona. Tuttavia, il $ (data) viene valutato solo una volta all'inizio e poi rimane la stessa. Ho dovuto usare un approccio di cui c'è un programma di utilità Unix timestamp Anteponi stdin :?

mvn -X <goals> | awk '{ print strftime("%Y-%m-%d %H:%M:%S"), $0; }'

Maven nella versione 3.1 e 3.2 consentono più semplice la configurazione del registratore basato SLF4J. È possibile specificare "file di log -l" nella riga di comando, e la configurazione di default del SimpleLogger è nel file di configurazione conf/logging/simplelogger.properties.

Se si desidera attivare le timestampts di default (millisecondi dalla messa) è possibile semplice cambiamento della proprietà in questo file:. org.slf4j.simpleLogger.showDateTime=true

Come suggerito da @eckes, file di configurazione di registrazione di default è disponibile presso /conf/logging/simplelogger.properties, da Maven 3.1.0 in poi.

Cambia "org.slf4j.simpleLogger.showDateTime" valore della proprietà su "true"

org.slf4j.simpleLogger.showDateTime=true

Per cambiare DateTimeFormat, come default è tempo relativo in millisecondi.
Aggiungere sotto la linea nel file di simplelogger.properties.

org.slf4j.simpleLogger.dateTimeFormat=HH:mm:ss:SSS

Riferimenti:
registrazione Maven: https://maven.apache.org/maven-logging.html < br> DateFormats: http://docs.oracle.com /javase/1.5.0/docs/api/java/text/SimpleDateFormat.html

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top