Return Spring Shell 中的自定义退出代码

Return custom exit code in Spring Shell

我正在开发一个 spring-shell 应用程序,我的 @CliCommand 方法具有以成功/失败等响应结束的自定义逻辑。 我看到可以通过抛出异常(变为 1)来修改 spring-shell 退出代码。

如果失败,我想 return 一个不同于 0 的退出代码。是否可以在不抛出异常的情况下做到这一点?

可以吗??

  System.exit(1);

如果不修改 Bootstrap/ExitShellRequest 类 目前无法做到这一点。

请记住,Spring Shell 的首要目的是创建 交互式 应用程序,因此不太强调系统退出代码。但是,如果您认为这应该是受支持的功能,请为其打开 ticket

最后,System.exit(x) 解决方案 可能 在您自己的命令中为您工作。但要小心,整个 shell 上下文可能无法正确清理,这可能是个问题。