FindBugsCommandLine commandLine = new FindBugsCommandLine(); int argCount = commandLine.parse(argv);  Project project = commandLine.getProject(); for (int i = argCount; i < argv.length; ++i) project.addJar(argv[i]);  if (project.getNumJarFiles() == 0) { System.out.println("FindBugs version " + Version.RELEASE + ", " + Version.WEBSITE); System.out.println("Usage: findbugs -textui [options...] [jar/zip/class files, directories...]"); System.out.println("Options:"); commandLine.printUsage(System.out); return; }  FindBugs findBugs = commandLine.createEngine();
  private static void runMain(String[] argv)	throws java.io.IOException, RuntimeException, FilterException  { 	FindBugsCommandLine commandLine = new FindBugsCommandLine();	int argCount = commandLine.parse(argv);	Project project = commandLine.getProject();	for (int i = argCount; i < argv.length; ++i)		project.addJar(argv[i]);	if (project.getNumJarFiles() == 0) {		System.out.println("FindBugs version " + Version.RELEASE + ", " + Version.WEBSITE);		System.out.println("Usage: findbugs -textui [options...] [jar/zip/class files, directories...]");		System.out.println("Options:");		commandLine.printUsage(System.out);		return;	}	FindBugs findBugs = commandLine.createEngine();	try {		findBugs.execute();	} catch (InterruptedException e) {		// Not possible when running from the command line	}	int bugCount = findBugs.getBugCount();	int missingClassCount = findBugs.getMissingClassCount();	int errorCount = findBugs.getErrorCount();	if (!commandLine.quiet() || commandLine.setExitCode()) {		if (bugCount > 0)			System.err.println("Warnings generated: " + bugCount);		if (missingClassCount > 0)			System.err.println("Missing classes: " + missingClassCount);		if (errorCount > 0)			System.err.println("Analysis errors: " + errorCount);	}	if (commandLine.setExitCode()) {		int exitCode = 0;		if (errorCount > 0)			exitCode |= ERROR_FLAG;		if (missingClassCount > 0)			exitCode |= MISSING_CLASS_FLAG;		if (bugCount > 0)			exitCode |= BUGS_FOUND_FLAG;		System.exit(exitCode);	}  }