2016-12-30 89 views

回答

1

不幸的是,这不支持。对CTRL-C的支持在PR中,但不是用于杀死外部命令(而是用于取消到目前为止在提示符处输入的文本)。

+0

此功能的当前状态是什么?我试图在命令中捕获UserInterruptException,但在按Ctrl-C后永远不会执行。有没有其他方法可以优雅地退出/中断长时间运行的命令?顺便说一句,我使用'spring-shell 2.0.0.M2'。 – user1480019

+0

上面的评论是针对Spring Shell 1.x的。 Spring Shell 2.x现在支持捕获CTRL-C,但正如所解释的,不是用于中断长时间运行的命令,而是取消输入缓冲区。如果你想取消一个命令,你必须自己实现捕捉信号,我相信这需要利用本地库(JLine可能会有所帮助) – ebottard