Spring Projects

Spring Shell

Spring Shell is an interactive shell that can be easily extended with commands using a Spring based programming model.

The code for the shell has been extracted from the Spring Roo project, removing OSGi dependencies, and turned into a standalone project. This gives it a strong foundation and allows for the shell to be more easily adopted by those wanting to use only interactive shell features. This decoupling also allows for a more focused effort to improve shell functionality and make it an easily reusable component across projects.

Spring Shell is an interactive shell that can be easily extended with commands using a Spring based programming model.

The code for the shell has been extracted from the Spring Roo project, removing OSGi dependencies, and turned into a standalone project. This gives it a strong foundation and allows for the shell to be more easily adopted by those wanting to use only interactive shell features. This decoupling also allows for a more focused effort to improve shell functionality and make it an easily reusable component across projects.

#maven

Features

  • POJO based programming model to contribute custom commands to the shell
  • Uses Spring classpath scanning features as basis for plug-in strategy
  • Based off Roo Shell code base, so inherits the Roo Shell Features
  • Tab completion - The cornerstone of command-line usability is tab assist. Hit TAB and the shell will show you applicable options
  • Contextual awareness - shell remembers a Java type you are working with and automatically treats it as an argument to a command
  • Command Hiding - Command hiding will remove commands which do not make sense given the current context of your shell
  • Help assistance - If you'd like to know all the options available for a given command, use the help command.
  • Scripting and script recording - Save your shell sessions and play them again later
  • Customize command prompt, banner, devices, shell history file name,

Resources

Issue Tracking JIRA
Source Control GitHub
Build Status CI

Maven Artifacts

The artifacts are hosted by the SpringSource repository. We do recommend reading the quick FAQ for more info.

Maven Release Repository
<repository>
<-- Release -->
<id>spring-release</id>
<name>Spring Maven RELEASE Repository</name>
<url>http://repo.springframework.org/release</url>
</repository>
<repository>
<-- libs-release for JLine fork-->
<id>libs-release</id>
<name>Spring Maven libs-release Repository</name>
<url>http://repo.springframework.org/libs-release</url>
</repository>
Maven Release Dependency
<dependency>
<groupId>org.springframework.shell</groupId>
<artifactId>spring-shell</artifactId>
<version>1.0.0.RELEASE</version>
</dependency>
Maven Milestone Repository
<repository>
<-- Milestone/RC -->
<id>spring-milestone</id>
<name>Spring Maven MILESTONE Repository</name>
<url>http://repo.springframework.org/libs-milestone</url>
</repository>
Maven Milestone Dependency
<dependency>
<groupId>org.springframework.shell</groupId>
<artifactId>spring-shell</artifactId>
<version>1.0.0.RC1</version>
</dependency>
Maven Snapshot Repository
<repository>
<-- Snapshots -->
<id>spring-snapshot</id>
<name>Spring Maven SNAPSHOT Repository</name>
<url>http://repo.springframework.org/libs-snapshot</url>
</repository>
Maven Snapshot Dependency
<dependency>
<groupId>org.springframework.shell</groupId>
<artifactId>spring-shell</artifactId>
<version>1.0.0.BUILD-SNAPSHOT</version>
</dependency>

Latest GA release - 1.0.0.RELEASE

 

 


Quick Jump

Reference Docs
Javadocs
Maven Artifacts
Discussions

Issue Tracker
Source Repository
Build Status

 


Release Summary

Spring Shell

 


Documentation

Latest GA release - 1.0.0.RELEASE