问题描述
在执行 Groovy 脚本时,我们希望可以彩色化输出日志,以进行提醒、区分不同的信息。比如,错误信息显示为红色,警告信息显示为黄色,成功信息显示为绿色,普通信息显示为正常颜色。
该笔记将记录:在 Groovy 中,如何使用 ANSI Color 转义序列,来控制日志输出颜色。
解决方案
方案一、直接使用转义序列
def ANSI_RESET = "\u001B[0m"; def ANSI_BLACK = "\u001B[30m"; def ANSI_RED = "\u001B[31m"; def ANSI_GREEN = "\u001B[32m"; def ANSI_YELLOW = "\u001B[33m"; def ANSI_BLUE = "\u001B[34m"; def ANSI_PURPLE = "\u001B[35m"; def ANSI_CYAN = "\u001B[36m"; def ANSI_WHITE = "\u001B[37m"; println "${ANSI_GREEN}GREEN COLORED${ANSI_RESET}NORMAL"
方案二、使用第三方的类库
@Grapes([ @GrabResolver(name='aliyun', root='https://maven.aliyun.com/repository/central', m2Compatible='true'), @Grab(group='com.pi4j', module='pi4j-core', version='1.3') ]) import com.pi4j.util.ConsoleColor println "${ConsoleColor.RED}RED COLORED${ConsoleColor.RESET}NORMAL"
参考文献
java – How to print color in console using System.out.println? – Stack Overflow
The Pi4J Project – Home