对于最新的稳定版本,请使用 Spring Shell 3.3.3spring-doc.cn

执行

本节介绍如何设置 Spring Shell 以在交互模式下工作。spring-doc.cn

交互模式

版本 2.1.x 引入了内置支持,以区分交互式 和非交互模式。这使得将 shell 用作 简单的命令行工具,无需自定义。spring-doc.cn

目前,如果在启动时传递了任何命令行选项,则会进入交互模式 或从命令行运行 shell。这在 shell 应用程序 是使用 Native Support 编译的。spring-doc.cn

某些命令在交互模式下运行时可能没有任何有用的含义 或(相反)在非交互模式下。例如,内置命令将 在非交互模式下没有意义,因为它用于退出交互模式。exitspring-doc.cn

该注解有一个名为 的字段,您可以使用它来通知 shell 来了解特定命令何时可用。@ShellMethodinteractionModespring-doc.cn

Shell Runners

ShellApplicationRunner是传递 Boot 的主界面 ,它的默认 implementation 会做出一个 choice ,哪个会被使用。可以有 只有一个,但出于某种原因需要时可以重新定义它。ApplicationArgumentsShellRunnerShellApplicationRunnerspring-doc.cn

存在三种实现,分别名为 和 。这些默认启用,但 如果需要,可以使用 properties 禁用,也可以指定地禁用。ShellRunnerInteractiveShellRunnerNonInteractiveShellRunnerScriptShellRunnerspring.shell.interactive.enabledspring.shell.noninteractive.enabledspring.shell.script.enabledspring-doc.cn