我想在spring-shell中对我的控制台输出进行着色。类似于:
System.out.println("\red; red text");我知道彩色的JUL日志输出,但这还不够。
我怎么能做到这一点?
发布于 2013-11-04 22:41:36
您可以在输出中使用ANSI值。
下面是我的带有一些颜色常量的类:
public class AnsiConstants {
public static final String ANSI_RESET = "\u001B[0m";
public static final String ANSI_BLACK = "\u001B[30m";
public static final String ANSI_RED = "\u001B[31m";
public static final String ANSI_GREEN = "\u001B[32m";
public static final String ANSI_YELLOW = "\u001B[33m";
public static final String ANSI_BLUE = "\u001B[34m";
public static final String ANSI_PURPLE = "\u001B[35m";
public static final String ANSI_CYAN = "\u001B[36m";
public static final String ANSI_GRAY = "\u001B[37m";
public static final String ANSI_WHITE = "\u001B[37;1m";
}您的示例可以使用以下命令生成:
System.out.println(ANSI_RED + "red text" + ANSI_RESET);发布于 2016-09-15 22:34:16
如果你是基于Spring Boot,在AnsiColor中使用AnsiOutput应该是可行的。示例:
@SpringBootApplication
public class Application {
@EventListener
public void onApplicationReady(ApplicationReadyEvent event) {
System.out.println(AnsiOutput.toString(
AnsiColor.GREEN, "Service started successfully", AnsiColor.DEFAULT));
}
@EventListener
public void onApplicationFailed(ApplicationFailedEvent event) {
System.err.println(AnsiOutput.toString(
AnsiColor.RED, "Service startup failed", AnsiColor.DEFAULT));
}
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}https://stackoverflow.com/questions/15134520
复制相似问题