/** * Invoked when an the user has specified an illegal parameter. The default implementation prints * the localized error message to the standard output {@link #out}, and then exit the virtual * machine. User may override this method if they want a different behavior. * * <p>This method <em>is not</em> invoked when an anormal error occured (for example an unexpected * {@code NullPointerException} in some of developper's module). If such an error occurs, the * normal exception mechanism will be used. * * @param exception An exception with a message describing the user's error. */ protected void illegalArgument(final Exception exception) { printSummary(exception); System.exit(ILLEGAL_ARGUMENT_EXIT_CODE); }