This version is still in development and is not considered stable yet. For the latest stable version, please use Spring Shell 3.3.1!

Context Close

Command execution logic happens via Spring Boot’s ApplicationRunner beans. Normally Spring ApplicationContext closes automatically after these runner beans has been processed unless there is something what keeps it alive like use of @EnableScheduling or generally speaking there are threads which don’t die automatically.

It is possible to add configuration property spring.shell.context.close which registers ApplicationListener for ApplicationReadyEvent and requests context close after shell has completed its execution logic.

spring:
  shell:
    context:
      close: true
This setting is not enabled by default.