如何从Maven输出中删除颜色?

时间:2017-04-26 15:31:58

标签: maven

当我在Jenkins中运行maven目标时(例如" mvn test"),由于出现了颜色控制字符,日志很难读取(参见下面的示例)。反正有没有删除颜色格式?

.current-menu-item a {
    text-decoration: underline;
}

4 个答案:

答案 0 :(得分:23)

感谢khmarbaise在我的问题评论中回答他/她的答案:

  

你可以简单地定义-B for --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] ------------------------------------------------------------------------

答案 1 :(得分:1)

在某些情况下(例如在CI服务器中),其他答案中提到的

--batch-mode确实是一个更好的选择,但是如果您只想关闭颜色,则从maven 3.5.1开始,可以使用以下选项:

mvn -Dstyle.color=never

该参数的其他选项为alwaysauto

答案 2 :(得分:0)

maven --batch-mode可以。但是,如果必须检查一些包含这些颜色代码的已生成输出,则可以使用sed去除代码,如here所述。

答案 3 :(得分:0)

批处理模式 -B (删除颜色标签)和静默模式 -q 的詹金斯Maven插件示例:

rtMaven = Artifactory.newMavenBuild()
...
rtMaven.run pom: 'pom.xml',
            goals: "-q -B clean compiler:compile"