When I throw an exception in a method that gets invoked by CliFactory.parseArgumentsUsingInstance() I get a InvocationTargetRuntimeException in the first place rather than my own exception.
I don't know if there are reasons against it, but I would expect to receive my own exception. That way I could do some argument validation in the methods and throw exceptions respectively.