code: protected int maininstance(String[] args) {
      parser = new CmdLineParser(this);
      try {
        parser.parseArgument(args);
        if (debug)
          showVersion();
        if (this.showVersion) {
          showVersion();
        } else if (this.showHelp) {
          showHelp();
        } else {
          // FIXME - do something
          // implement actions
          System.err.println(
              "Commandline interface is not functional in " + VERSION + " yet");
          exitCode = 1;
          // exitCode = 0;
        }
      } catch (CmdLineException e) {
        // handling of wrong arguments
        usage(e.getMessage());
      } catch (Exception e) {
        handle(e);
        exitCode = 1;
      }
      return exitCode;
    }
docs: main instance - this is the non-static version of main - it will run as a
  static main would but return it's exitCode to the static main the static
  main will then decide whether to do a System.exit(exitCode) or not.
  
  @param args
  - command line arguments
  @return - the exit Code to be used by the static main program