如何在maven 3.5控制台输出中自定义颜色

时间:2017-04-15 11:08:58

标签: maven console

Maven 3.5.0在控制台输出中引入了着色。

这是一个很酷的功能,但我不喜欢某些默认颜色选择,例如密集的蓝色INFO看起来太分散了注意力。

是否有可能以某种方式自定义颜色?

2 个答案:

答案 0 :(得分:13)

原来有可能。

Maven使用several styles格式化其输出:

enum Style
{

    DEBUG(   "bold,cyan"   ),
    INFO(    "bold,blue"   ),
    WARNING( "bold,yellow" ),
    ERROR(   "bold,red"    ),
    SUCCESS( "bold,green"  ),
    FAILURE( "bold,red"    ),
    STRONG(  "bold"        ),
    MOJO(    "green"       ),
    PROJECT( "cyan"        );
...
}

您可以使用系统属性style.style_name覆盖样式的默认颜色。例如,要将INFO的样式从默认蓝色更改为深灰色,请传递

-Dstyle.info=bold,black

选择maven。它也可以使用MAVEN_OPTS环境变量指定,以便不在每次maven调用时键入它。

如果您不知道输出的特定部分使用了哪种样式,则可以使用默认颜色进行匹配。

样式中可以使用的颜色由jansi库定义:

public enum Color {
        BLACK(0, "BLACK"),
        RED(1, "RED"),
        GREEN(2, "GREEN"),
        YELLOW(3, "YELLOW"),
        BLUE(4, "BLUE"),
        MAGENTA(5, "MAGENTA"),
        CYAN(6, "CYAN"),
        WHITE(7, "WHITE"),
        DEFAULT(9, "DEFAULT");
}

似乎您可以使用bg为颜色添加前缀以指定背景颜色,为了使其更加密集​​,您可以添加bold修饰符,例如: bold,white,bgcyan - 青色背景上密集的白色。

答案 1 :(得分:0)

在Netbeans 8中使用Maven时,接受的答案中的-D设置将无效。

解决方案:在菜单中转到“工具”,“选项”,在对话框中转到“其他”,“输出”。在右侧,您将看到“调试”,“警告”,“失败”,“成功”,并且可以在其中更改颜色。我用它把难以看见的橙色变成了深色。