2016-09-27 65 views
0

我正在使用Spring-shell在java中创建命令行应用程序。我想实现自动更新功能。一旦Spring-shell完成初始化,我想运行“检查更新”代码。即在打印欢迎和版本注释之后。启动完成后的运行方法

有没有办法做到这一点?我该如何钩住一段代码?

回答

0

您可以创建一个实现ApplicationListener

看看事件文档7.15.2 Standard and Custom Events

+0

将这项工作为Spring壳太豆。我想在Spring shell Prints Banner和welcome note之后专门运行更新代码。 – Jef

+0

我认为如此写监听器ContextEventRefresh和/或ContextEventStarted检查,如果弹簧壳发出一个 – JEY

+0

ApplicationListener在打印横幅之前触发。目前我发现在spring-shell中没有简单的方法来做这件事,因为决定的地方(例如AbstractShell内的'''ExecutionStrategy'')是硬编码的('''新的SimpleExecutionStrategy() '')。 一个要查找的地方是'''PromptProvider''',但这会被多次触发,所以它可能不适合您的用例。 在横幅之前没有特别的理由不开枪吗? –