187 votes

Comment changer maven niveau d'enregistrement pour afficher des avertissements et des erreurs?

Je veux éviter de maven à partir d'affichage de messages d'information, je veux seulement voir des AVERTISSEMENTS et des ERREURS (le cas échéant).

Comment puis-je y parvenir, de préférence par la modification de la ligne de commande qui appelle maven?

142voto

kisp Points 1542

Pour répondre à votre question

J'ai fait une petite enquête, car je suis également intéressé par la solution.

Maven en ligne de commande options de verbosité

Selon http://books.sonatype.com/mvnref-book/reference/running-sect-options.html#running-sect-verbose-option

  • -e pour l'erreur
  • -X pour debug
  • -q pour une seule erreur

Maven fichier de configuration de la journalisation

Actuellement maven 3.1.x utilise SLF4J pour vous connecter au Système.. Vous pouvez modifier les paramètres de connexion dans le fichier:

${MAVEN_HOME}/conf/logging/simplelogger.properties

Selon la page : http://maven.apache.org/maven-logging.html

Installation en ligne de commande

Je pense que vous devriez être en mesure de configurer le niveau de journalisation par défaut de la simple logger via un paramètre de ligne de commande, comme ceci:

$ mvn clean package -Dorg.slf4j.simpleLogger.defaultLogLevel=debug

Mais je ne pouvais pas obtenir un emploi. Je suppose que le seul problème avec ceci est que, maven ramasse le niveau par défaut du fichier de configuration sur le chemin de la classe. J'ai aussi essayé un couple de d'autres paramètres via le Système.propriétés, mais tous ont échoué.

Vous pouvez trouver la source de slf4j sur github ici : slf4j github

La source de la simplelogger ici : slf4j/jcl-over-slf4j/src/main/java/org/apache/commons/logging/impl/SimpleLog.java

Le plexus chargeur charge le simplelogger.les propriétés.

105voto

Ruben Points 4459

L'exécution de maven avec l'-ou q, --quiet paramètre affiche uniquement les erreurs. Je ne sais pas d'un paramètre qui montre également des avertissements, mais pas d'info.

42voto

Tom H Points 1109
mvn validate clean install | egrep -v "(^\[INFO\])"

ou

mvn validate clean install | egrep -v "(^\[INFO\]|^\[DEBUG\])"

etc... comme l'exige

pouvez-vous dire que je suis un sysadmin? ;-)

23voto

Pawel Wrzeszcz Points 31

Si vous utilisez Logback, il suffit de mettre logback-test.xml fichier dans src/test/resources répertoire.

<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <encoder>
        <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
    </encoder>
</appender>
<root level="INFO">
    <appender-ref ref="STDOUT" />
</root>
</configuration>

1voto

Dmitry Sidorenko Points 149

Malheureusement, même avec maven 3 la seule façon de le faire est de patcher le code source.

Voici de courtes instructions sur la façon de le faire.

Clone ou une fourchette de Maven 3 pensions: "git clone https://github.com/apache/maven-3.git"

Edit org.apache.maven.cli.MavenCli#logging, et de modifier

cliRequest.request.setLoggingLevel( MavenExecutionRequest.LOGGING_LEVEL_INFO );

pour

cliRequest.request.setLoggingLevel( MavenExecutionRequest.LOGGING_LEVEL_WARN );

Dans l'actuelle version de capture instantanée, c'est à la ligne 270

Ensuite, il suffit d'exécuter "mvn install", votre nouveau maven distro sera situé dans "apache-maven\target\" dossier

Voir ce diff pour la référence: https://github.com/ushkinaz/maven-3/commit/cc079aa75ca8c82658c7ff53f18c6caaa32d2131

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X