Search code examples
springspring-bootspring-shell

Spring shell vs JMX


While studying about spring-boot, I stumbled upon shell support (CRsh (boot v1.x) Spring-Shell (boot v2.x)).

What I am not able to understand is we already have a rich support for JMX which has been since ages, what value-add does these shells introduce?

I did try to find it online but could not get a concrete comparison.


Solution

  • Spring Boot dropped support for CRaSH as it has been dormant for quite some time. This was for exposing metrics and controlling a live application from a CLI.

    Spring Shell however is a framework to write CLI based applications, so basically a different beast and not comparable to the CRaSH support in Spring Boot 1.

    As there is no replacement for CRaSH support in Spring Boot ended with the deprecation and removal. Although it was a nice feature the lack of support in the CRaSH project lead to the decision to drop the support.

    Now you can probably shoehorn Spring Shell into a Spring Boot application and add features like CRaSH but that is not what Spring Shell was designed for.