The Spring Shell provides an interactive shell that allows you to plugin your own custom commands using a Spring based programming model.
The shell has been extracted from the Spring Roo project, giving it a strong foundation and rich feature set. One significant change from Spring Roo is that the plugin model is no longer based on OSGi but instead uses the Spring IoC container to discover commands through classpath scanning. There is currently no classloader isolation between plugins, however that maybe added in future versions.
Spring Shell's features include
A simple, annotation driven, programming model to contribute custom commands
Use of Spring's classpath scanning functionality as the basis for a command plugin strategy and command development
Inheritance of the Roo Shell features, most notably tab completion, colorization, and script execution.
Customization of command prompt, banner, shell history file name.
This document assumes that the reader already has a basic familiarity with the Spring Framework.
While every effort has been made to ensure that this documentation is comprehensive and there are no errors, nevertheless some topics might require more explanation and some typos might have crept in. If you do spot any mistakes or even more serious errors and you can spare a few cycles during lunch, please do bring the error to the attention of the Spring Shell team by raising an issue.