Welcome to JewelCli
JewelCli uses an annotated interface or class definition to automatically parse and present command line arguments.
Please note that I have recently moved the sourcecode for jewelcli on to github. I have also changed its location in the Maven Central Repository.
Releases including and after 0.8 are in the package com.lexicalscope, and introduce some backwards incompatible changes, please see the changes for details.
Features
- Declarative option definition
Options are described in a declarative manner, by annotating a standard Java interface.
- Type enforcement
Options are automatically constrained to the Java type in the interface.
- Generic list support
Lists are automatically created for options defined to return any type assignable from java.util.List. All values are checked against the defined generic type of the list.
- Enum support
Options defined as an enum type are automatically converted.
- Regular Expression argument validation
A regular expression can be specified for each option, which the option's values must match.