You could try commandline (pretty anonymous name, I know )
It uses annotations to map command line arguments into an object model. A couple of parsing
modes and a set of annotations that can be combined in various ways allows you to create pretty advanced command line option rules.
While it allows you to map the command line arguments directly onto your domain model,
you should consider using separate classes for the command line arguments.