Skip to content
Mahmoud Ben Hassine edited this page Mar 25, 2026 · 5 revisions

Welcome to the spring-shell wiki!

About Spring Shell

Spring Shell is a Spring project that helps you build production-grade CLI (command-line interface) applications on top of the Spring platform.

Key highlights:

  • Purpose: Lets you create interactive shell applications using Spring and Java. You annotate methods with @Command and they become shell commands.
  • Run modes: Apps can run as interactive shells (a REPL-style prompt) or as non-interactive CLI tools, and can be packaged as standard JARs or GraalVM native executables.
  • Current version: 4.0.1 (released January 2026), built on Spring Boot 4.x.

The main code repository is a multi-module Maven project containing:

Module Purpose
spring-shell-core Core framework (command registration, parsing, etc.)
spring-shell-jline JLine integration for the interactive terminal
spring-shell-test Testing support
spring-shell-starters Starter dependencies
spring-shell-dependencies Spring Shell's Maven Bill of Materials
spring-shell-samples Sample applications (hello world, petclinic, secure input, etc.)
spring-shell-docs Documentation built with Antora
spring-shell-[core|test]-autoconfigure Spring Boot core/test auto-configuration

Main wiki pages

Clone this wiki locally