Spring boot通过banner.txt
提供支持颜色的可配置横幅,例如
${AnsiColor.RED}
__ __ ____ _ ____
| \/ |_ _ | _ \ ___ __| | | __ ) __ _ _ __ _ __ ___ _ __
| |\/| | | | | | |_) / _ \/ _` | | _ \ / _` | '_ \| '_ \ / _ \ '__|
| | | | |_| | | _ < __/ (_| | | |_) | (_| | | | | | | | __/ |
|_| |_|\__, | |_| \_\___|\__,_| |____/ \__,_|_| |_|_| |_|\___|_|
|___/
${AnsiColor.BRIGHT_WHITE}
不幸的是,横幅的最终颜色设置了弹簧启动应用程序后面的所有输出的颜色。最终颜色BRIGHT_WHITE
对于BLACK
的默认linux背景是可以的,但我也在intellij控制台中运行我的应用程序,它具有白色背景,所以我看不到横幅后的任何输出
横幅打印到标准输出后,如何将终端前景色和背景色恢复为横幅打印前的颜色?
将我的Intellij终端窗口的背景颜色设置为BLACK
不是解决方案,因为这需要本地自定义IDE以产生正常/预期的行为,而另一个则需要其他行为团队成员可能不喜欢或不想要。使用Intellij的默认设置在本地运行应用程序会很奇怪,并想知道为什么应用程序不会产生任何输出。
此外,对于可能没有默认颜色设置的linux终端也是如此 - 终端颜色也是个人选择,绝不应该是操作要求。
答案 0 :(得分:2)
试试${AnsiColor.DEFAULT}。我没有试过这个,但发现了一些用自定义颜色启动横幅并以默认结束它的示例。例如here,here,here和here。
答案 1 :(得分:0)
${AnsiStyle.NORMAL}
为我工作(在Spring Boot 2中测试)。
IntelliJ IDEA(经过2019.3测试)也知道${AnsiStyle.NORMAL}
并且不给出警告。
${AnsiColor.RED}
__ __ ____ _ ____
| \/ |_ _ | _ \ ___ __| | | __ ) __ _ _ __ _ __ ___ _ __
| |\/| | | | | | |_) / _ \/ _` | | _ \ / _` | '_ \| '_ \ / _ \ '__|
| | | | |_| | | _ < __/ (_| | | |_) | (_| | | | | | | | __/ |
|_| |_|\__, | |_| \_\___|\__,_| |____/ \__,_|_| |_|_| |_|\___|_|
|___/
${AnsiStyle.NORMAL}