public CheckerMain(final File checkerJar,final List<String> args){
  this.checkerJar=checkerJar;
  final File searchPath=checkerJar.getParentFile();
  this.checkerQualJar=new File(searchPath,"checker-qual.jar");
  replaceShorthandProcessor(args);
  argListFiles=collectArgFiles(args);
  this.javacJar=extractFileArg(PluginUtil.JAVAC_PATH_OPT,new File(searchPath,"javac.jar"),args);
  final String jdkJarName=PluginUtil.getJdkJarName();
  this.jdkJar=extractFileArg(PluginUtil.JDK_PATH_OPT,new File(searchPath,jdkJarName),args);
  this.compilationBootclasspath=createCompilationBootclasspath(args);
  this.runtimeBootClasspath=createRuntimeBootclasspath(args);
  this.jvmOpts=extractJvmOpts(args);
  this.cpOpts=createCpOpts(args);
  this.ppOpts=createPpOpts(args);
  this.toolOpts=args;
  assertValidState();
}

public CheckerMain ( final File checkerJar , final List < String > args ) { this . checkerJar = checkerJar ; final File searchPath = checkerJar . getParentFile ( ) ; this . checkerQualJar = new File ( searchPath , "checker-qual.jar" ) ; replaceShorthandProcessor ( args ) ; argListFiles = collectArgFiles ( args ) ; this . javacJar = extractFileArg ( PluginUtil . JAVAC_PATH_OPT , new File ( searchPath , "javac.jar" ) , args ) ; final String jdkJarName = PluginUtil . getJdkJarName ( ) ; this . jdkJar = extractFileArg ( PluginUtil . JDK_PATH_OPT , new File ( searchPath , jdkJarName ) , args ) ; this . compilationBootclasspath = createCompilationBootclasspath ( args ) ; this . runtimeBootClasspath = createRuntimeBootclasspath ( args ) ; this . jvmOpts = extractJvmOpts ( args ) ; this . cpOpts = createCpOpts ( args ) ; this . ppOpts = createPpOpts ( args ) ; this . toolOpts = args ; assertValidState ( ) ; }
construct all the relevant file locations and java version given the path to this jar and a set of directories in which to search for jars .
