Вопрос

На мой вкус, Maven выдает слишком много строк вывода (мне нравится способ Unix:отсутствие новостей - хорошая новость).

Я хочу избавиться от всех строк [INFO], но не смог найти ни одного упоминания об аргументах или настройках конфигурации, которые управляют многословием Maven.

Нет ли способа установить уровень журнала в стиле LOG4J?

Это было полезно?

Решение

Вы можете попробовать -q выключатель.

-q,--quiet Тихий вывод — показывать только ошибки

Другие советы

-q как сказано выше, это то, что вам нужно.Альтернативой может быть

, --пакетный режимЗапуск в неинтерактивном (пакетном) режиме режима режима необходим, если вам нужно запустить Maven в неинтерактивной среде непрерывной интеграции.При работе в неинтерактивном режиме Maven никогда не перестанет принимать вводимые пользователем данные.Вместо этого он будет использовать разумные значения по умолчанию, когда потребуется ввод данных.

А также сократит выходные сообщения более или менее до самого необходимого.

Используйте параметры командной строки -q или --quiet

Официальная ссылка:https://maven.apache.org/maven-logging.html

Вы можете добавить в JVM параметры:

-Dorg.slf4j.simpleLogger.defaultLogLevel=WARN

Остерегайтесь ПРОПИСНЫХ букв.

Maven 3.1.x использует SLF4j для журналирования, инструкции по его настройке можно найти по адресу https://maven.apache.org/maven-logging.html

Суммируя:Либо измените ${MAVEN_HOME}/conf/logging/simplelogger.properties, или установите те же свойства через MAVEN_OPTS переменная среды.

Например:параметр MAVEN_OPTS к -Dorg.slf4j.simpleLogger.log.org.apache.maven.cl‌​i.transfer.Slf4jMave‌​nTransferListener=wa‌​rn настраивает ведение журнала прослушивателя передачи в пакетном режиме и -Dorg.slf4j.simpleLogger.defaultLogLevel=warn устанавливает уровень журнала по умолчанию.

Если вы хотите только избавиться от [INFO] сообщения, которые вы также можете сделать:

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

Подавить все выходные данные (кроме ошибок), которые вы можете перенаправить stdout к /dev/null с:

mvn ... 1>/dev/null

(Это работает, только если вы используете bash (или аналогичные оболочки) для запуска команд Maven.)

Существующий ответ поможет вам фильтровать на основе уровня журнала, используя --quiet.Я обнаружил, что многие сообщения INFO полезны для отладки, однако сообщения журнала артефактов загрузки, подобные следующим, были шумными и бесполезными.

Downloading: http://nexus:8081/nexus/content/groups/public/org/apache/maven/plugins/maven-compiler-plugin/maven-metadata.xml

Я нашел это решение:

https://blogs.itemis.com/en/in-a-nutshell-removing-artifact-messages-from-maven-log-output

mvn clean install -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn

Моя проблема в том, что -q слишком тихо.Я использую Maven под CI

С Maven 3.6.1 (апрель 2019 г.), теперь у вас есть опция для подавления процесса передачи при загрузке/выгрузке в интерактивном режиме.

mvn --no-transfer-progress ....

или короче:

mvn -ntp ... ....

Что это Рэй предложенный в комментариях с МНГ-6605 и ПР 239.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top