airline seems to follow a more modern, annotation-based approach to parse command line arguments. Evaluate the use of the library and port to it, if reasonable.
There is a fork called airline2 with enhanced features and without dependency to Guava making a shaded-jar much more lightweight. Alternatively, there is args4j and a lot more...