【发布时间】:2018-07-01 15:49:30
【问题描述】:
Spring boot 通过banner.txt 提供了一个支持颜色的可配置横幅,例如
${AnsiColor.RED}
__ __ ____ _ ____
| \/ |_ _ | _ \ ___ __| | | __ ) __ _ _ __ _ __ ___ _ __
| |\/| | | | | | |_) / _ \/ _` | | _ \ / _` | '_ \| '_ \ / _ \ '__|
| | | | |_| | | _ < __/ (_| | | |_) | (_| | | | | | | | __/ |
|_| |_|\__, | |_| \_\___|\__,_| |____/ \__,_|_| |_|_| |_|\___|_|
|___/
${AnsiColor.BRIGHT_WHITE}
不幸的是,横幅的最终颜色为 Spring Boot 应用程序的所有输出设置了颜色。 BRIGHT_WHITE 的最终颜色对于默认的 linux 背景BLACK 来说是可以的,但我也在 intellij 控制台中运行我的应用程序,它有一个白色背景,所以在横幅之后我看不到任何输出。
横幅打印到标准输出后,如何将终端前景色和背景色恢复为横幅打印前的颜色?
将我的 Intellij 终端窗口的背景颜色设置为 BLACK 不是解决方案,因为这需要本地自定义 IDE 以产生正常/预期的行为,以及其他团队成员的行为可能不喜欢或不想要。使用 Intellij 的默认设置在本地运行应用程序会令人惊讶,并想知道为什么应用程序没有产生任何输出。
同样,Linux 终端也是如此,它可能没有默认颜色设置 - 终端颜色也是个人选择,绝不应该是操作要求。
【问题讨论】:
标签: spring-boot terminal-color