docs: public void launch() throws Exception {
          // Sanity-check the loaded BCEL classes
          if (!CheckBcel.check()) {
              System.exit(1);
          }
  
          int launchProperty = getLaunchProperty();
  
          if (GraphicsEnvironment.isHeadless() || launchProperty == TEXTUI) {
              FindBugs2.main(args);
          } else if (launchProperty == SHOW_HELP) {
              ShowHelp.main(args);
          } else if (launchProperty == SHOW_VERSION) {
              Version.main(new String[] { "-release" });
          } else {
              Class<?> launchClass = Class.forName("edu.umd.cs.findbugs.gui2.Driver");
              Method mainMethod = launchClass.getMethod("main", args.getClass());
              mainMethod.invoke(null, (Object) args);
          }
  
      }