Maven выводит слишком много строк вывода на мой вкус (мне нравится способ Unix: нет новостей - это хорошие новости).
Я хочу избавиться от всех строк [INFO], но мне не удалось найти упоминания об аргументе или настройках конфигурации, которые управляют подробностью Maven.
Нет ли LOG4J-подобного способа установить уровень журнала?
mvn --no-transfer-progress ...
(илиmvn -ntp
для шорт) должно быть подходящим решением. Смотрите мой ответ ниже .Ответы:
Вы можете попробовать ключ -q .
источник
-q
это слишком тихо. Я запускаю maven под CI, и я хочу видеть шаги, которые он предпринимает (для отслеживания прогресса), но индикаторы загрузки портят отображение не-ANSI. Есть ли способ отключить только индикаторы прогресса загрузки?-B
для включения пакетного режима (в любом случае это должно быть в вашей системе CI!), А затем установитеMAVEN_OPTS="-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn"
для уничтожения информации о ходе загрузки.--batch-mode
(-B
), чтобы-Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
трюк работал.-q, как сказано выше, это то, что вам нужно. Альтернативой может быть
-B , --batch-mode Запускать в неинтерактивном (пакетном) режиме. Пакетный режим необходим, если вам нужно запустить Maven в неинтерактивной среде непрерывной интеграции. При работе в неинтерактивном режиме Maven никогда не перестанет принимать ввод от пользователя. Вместо этого он будет использовать разумные значения по умолчанию, когда потребуется ввод.
И также сократит выходные сообщения более или менее до самого необходимого.
источник
В Maven 3.6.1 (апрель 2019 г.) теперь у вас есть возможность подавлять процесс передачи при загрузке / выгрузке в интерактивном режиме .
Именно это предложил Рэй в комментариях к MNG-6605 и PR 239 .
источник
deploy
задачиОфициальная ссылка: https://maven.apache.org/maven-logging.html
Вы можете добавить в параметры JVM :
Остерегайтесь заглавных букв.
источник
Используйте параметры командной строки -q или --quiet
источник
Если вы хотите избавиться только от
[INFO]
сообщений, вы также можете:Чтобы подавить все выходы (кроме ошибок), вы можете перенаправить
stdout
их/dev/null
с помощью:(Это работает, только если вы используете
bash
(или аналогичные оболочки) для запуска команд Maven.)источник
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.cli.transfer.Slf4jMavenTransferListener=warn
конфигурируешь протоколирование передачи слушателя пакетного режима, и-Dorg.slf4j.simpleLogger.defaultLogLevel=warn
устанавливает уровень журнала по умолчанию.источник
Существующий ответ поможет вам фильтровать на основе уровня журнала использования
--quiet
. Я обнаружил, что многие сообщения INFO полезны для отладки, однако сообщения журнала артефактов загрузки, такие как следующие, были шумными и бесполезными.Я нашел такое решение:
https://blogs.itemis.com/en/in-a-nutshell-removing-artifact-messages-from-maven-log-output
источник