Maven peut-il être moins verbeux?

Maven crache beaucoup trop de lignes de sortie à mon goût (j’aime la manière Unix: aucune nouvelle n’est une bonne nouvelle).

Je veux me débarrasser de toutes les lignes [INFO], mais je n’ai trouvé aucune mention d’un argument ou d’un paramètre de configuration qui contrôle la verbosité de Maven.

N’y a-t-il pas de moyen similaire à LOG4J pour définir le niveau de journalisation?

    Vous pouvez essayer le commutateur -q .

    -q, – calme Sortie silencieuse – affiche uniquement les erreurs

    -q comme dit ci-dessus est ce dont vous avez besoin. Une alternative pourrait être

    -B , –batch-mode Exécuter en mode non interactif (batch) Le mode batch est essentiel si vous devez exécuter Maven dans un environnement d’continuous integration non interactif. En mode non interactif, Maven ne cessera jamais d’accepter les entrées de l’utilisateur. Au lieu de cela, il utilisera des valeurs par défaut sensibles lorsqu’il nécessite une entrée.

    Et réduira également les messages de sortie plus ou moins à l’essentiel.

    Utilisez les options de ligne de commande -q ou –quiet

    Lien officiel: https://maven.apache.org/maven-logging.html

    Vous pouvez append les parameters de la JVM :

     -Dorg.slf4j.simpleLogger.defaultLogLevel=WARN 

    Attention à UPPERCASE.

    Maven 3.1.x utilise SLF4j pour la journalisation, vous pouvez trouver des instructions pour le configurer sur https://maven.apache.org/maven-logging.html

    En bref: modifiez ${MAVEN_HOME}/conf/logging/simplelogger.properties ou définissez les mêmes propriétés via la variable d’environnement MAVEN_OPTS .

    Par exemple: définissez MAVEN_OPTS sur -Dorg.slf4j.simpleLogger.log.org.apache.maven.cl‌​i.transfer.Slf4jMave‌​nTransferListener=wa‌​rn configure la journalisation de l’écouteur de transfert en mode de traitement par lots, et -Dorg.slf4j.simpleLogger.defaultLogLevel=warn définit le niveau de journalisation par défaut.

    Si vous voulez seulement vous débarrasser des messages [INFO] vous pourriez aussi faire:

     mvn ... | fgrep -v "[INFO]" 

    Pour supprimer toutes les sorties (sauf les erreurs), vous pouvez redirect stdout vers /dev/null avec:

     mvn ... 1>/dev/null 

    (Cela ne fonctionne que si vous utilisez bash (ou des shells similaires) pour exécuter les commandes Maven.)