-
Notifications
You must be signed in to change notification settings - Fork 393
Home
Mahmoud Ben Hassine edited this page Mar 25, 2026
·
5 revisions
Welcome to the spring-shell wiki!
Spring Shell is a Spring project that helps you build production-grade CLI (command-line interface) applications on top of the Spring platform.
- Purpose: Lets you create interactive shell applications using Spring and Java. You annotate methods with
@Commandand 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 |