自定义
本节描述了如何自定义外壳。
章节摘要
📄️ 主题设置
当前的终端实现功能丰富,通常可以显示除了纯文本以外的内容。例如,文本可以被样式化为粗体或具有不同的颜色。终端能够显示来自 unicode 表的各种字符(如 emoji)也是很常见的,这些字符通常用于使 shell 输出更加美观。
📄️ 日志记录
默认情况下,Spring Boot 应用程序会将消息记录到控制台,这至少是令人烦恼的,并且可能还会与 shell 命令的输出混合。幸运的是,有一种简单的方法可以通过启动属性来指示日志记录的更改。
📄️ 命令未找到
默认情况下,缺失的命令通过 CommandNotFoundResultHandler 处理,并输出一条简单的消息:
📄️ 单个命令
如果您的 shell 应用程序是为了单一目的而制作,仅包含一个命令,配置它可能会更有益。属性 spring.shell.noninteractive.primary-command 如果定义,将禁用除 NonInteractiveShellRunner 之外的所有其他运行器,并配置为使用定义的主要命令。
📄️ 上下文关闭
命令执行逻辑通过 Spring Boot 的 ApplicationRunner beans 进行。通常情况下,Spring ApplicationContext 在这些 runner beans 被处理后会自动关闭,除非有某些东西使其保持活跃,比如使用 @EnableScheduling,或者一般来说,有一些线程不会自动结束。