Подтвердить что ты не робот

Как удалить цвета из вывода Maven?

Когда я запускаю цель maven в Jenkins (например, "mvn test" ), журналы очень трудно читать из-за отображаемых символов управления цветом (см. пример ниже). Есть ли способ удалить форматирование цвета?

[[1;34mINFO[m] [1m-------------------------------------------------------------------[m
[[1;34mINFO[m] [1;32mBUILD SUCCESS[m
[[1;34mINFO[m] [1m-------------------------------------------------------------------[m
[[1;34mINFO[m] Total time: 16.097 s
[[1;34mINFO[m] Finished at: 2017-04-26T11:23:06-04:00
[[1;34mINFO[m] Final Memory: 41M/100M
[[1;34mINFO[m] [1m-------------------------------------------------------------------[m
4b9b3361

Ответ 1

Спасибо khmarbaise за его ответ в комментарии к моему вопросу:

вы можете просто определить -B для -batch-mode, который отключит использование цвет..

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

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 17.507 s
[INFO] Finished at: 2017-04-27T05:30:07-04:00
[INFO] Final Memory: 41M/100M
[INFO] ------------------------------------------------------------------------

Ответ 2

maven --batch-mode сделает. Однако, если вам нужно проверить какой-либо уже сгенерированный вывод, содержащий эти цветовые коды, вы можете использовать sed для удаления кодов, как это объяснялось здесь.

Ответ 3

--batch-mode, упомянутый в других ответах, действительно является лучшим вариантом в некоторых обстоятельствах, например, на CI-сервере, но если вы хотите просто отключить цвет, возможно, начиная с maven 3.5.1, использовать следующую опцию:

mvn -Dstyle.color=never

другие опции для параметра: always или auto.