public class PluginUtil extends Object
CheckerMain.
 NOTE: There are multiple copies of this file in the following projects/locations:
 checker-framework-eclipse-plugin/
     org.checkerframework.eclipse.util.PluginUtil
 checker-framework/
     org.checkerframework.framework.util.PluginUtil
 
 These files MUST be IDENTICAL after the package descriptor.| Modifier and Type | Class and Description | 
|---|---|
| static class  | PluginUtil.CheckerProp | 
| Modifier and Type | Field and Description | 
|---|---|
| static String | JAVAC_PATH_OPTOption name for specifying an alternative javac.jar location. | 
| static String | JDK_PATH_OPTOption name for specifying an alternative jdk.jar location. | 
| Constructor and Description | 
|---|
| PluginUtil() | 
| Modifier and Type | Method and Description | 
|---|---|
| static String | escapeQuotesAndSlashes(String toEscape) | 
| static String | fileArgToStr(File fileArg) | 
| static List<String> | getBooleanProp(Map<PluginUtil.CheckerProp,Object> props,
              PluginUtil.CheckerProp prop,
              String tag) | 
| static List<String> | getCmd(String executable,
      File javacPath,
      File jdkPath,
      File srcFofn,
      String processors,
      String checkerHome,
      String javaHome,
      File classPathFofn,
      String bootClassPath,
      Map<PluginUtil.CheckerProp,Object> props,
      PrintStream out,
      boolean procOnly,
      String outputDirectory) | 
| static List<String> | getCmdArgsOnly(File javacPath,
              File jdkPath,
              File srcFofn,
              String processors,
              String checkerHome,
              String javaHome,
              File classpathFofn,
              String bootClassPath,
              Map<PluginUtil.CheckerProp,Object> props,
              PrintStream out,
              boolean procOnly,
              String outputDirectory) | 
| static List<String> | getCmdArgsOnly(File srcFofn,
              String processors,
              String checkerHome,
              String javaHome,
              File classpathFofn,
              String bootClassPath,
              Map<PluginUtil.CheckerProp,Object> props,
              PrintStream out,
              boolean procOnly,
              String outputDirectory) | 
| static String | getJavaCommand(String javaHome,
              PrintStream out) | 
| static String | getJdkJarName()Determine the version of the JRE that we are currently running and select a jdkX.jar where X
 is the version of Java that is being run (e.g. | 
| static String | getJdkJarPrefix()Determine the version of the JRE that we are currently running and select a jdkX where X is
 the version of Java that is being run (e.g. | 
| static double | getJreVersion()Extract the first two version numbers from java.version (e.g. | 
| static List<String> | getStringProp(Map<PluginUtil.CheckerProp,Object> props,
             PluginUtil.CheckerProp prop,
             String tag,
             String... extras) | 
| static boolean | isWindows() | 
| static String | join(String delimiter,
    Iterable<?> values) | 
| static <T> String | join(String delimiter,
    T[] objs) | 
| static List<String> | readFile(File argFile)Return a list of Strings, one per line of the file. | 
| static List<File> | toFiles(List<String> fileNames) | 
| static List<String> | toJavaOpts(List<String> opts) | 
| static String | wrapArg(String classpath) | 
| static void | writeFile(File destination,
         List<String> contents)Write the strings to the file, one per line. | 
| static void | writeFofn(File destination,
         File... files)Takes a list of files and writes it as a "File of file names" (i.e. | 
| static void | writeFofn(File destination,
         List<File> files)Takes a list of files and writes it as a "File of file names" (i.e. | 
| static File | writeTmpCpFile(String prefix,
              boolean deleteOnExit,
              String classpath) | 
| static File | writeTmpFile(String prefix,
            String suffix,
            boolean deleteOnExit,
            List<String> args)Write the strings to a temporary file. | 
| static File | writeTmpFofn(String prefix,
            String suffix,
            boolean deleteOnExit,
            List<File> files) | 
| static File | writeTmpSrcFofn(String prefix,
               boolean deleteOnExit,
               List<File> files) | 
public static final String JAVAC_PATH_OPT
public static final String JDK_PATH_OPT
public static void writeFofn(File destination, List<File> files) throws IOException
destination - the fofn file we are writing. This file will contain newline separated
     list of absolute file paths.files - the files to write to the destination fileIOExceptionpublic static void writeFofn(File destination, File... files) throws IOException
destination - the fofn file we are writing. This file will contain newline separated
     list of absolute file paths.files - the files to write to the destination fileIOExceptionpublic static File writeTmpFofn(String prefix, String suffix, boolean deleteOnExit, List<File> files) throws IOException
IOExceptionpublic static File writeTmpFile(String prefix, String suffix, boolean deleteOnExit, List<String> args) throws IOException
deleteOnExit - if true, delete the file on program exitIOExceptionpublic static void writeFile(File destination, List<String> contents) throws IOException
IOExceptionpublic static List<String> readFile(File argFile) throws IOException
IOExceptionpublic static List<String> getStringProp(Map<PluginUtil.CheckerProp,Object> props, PluginUtil.CheckerProp prop, String tag, String... extras)
public static List<String> getBooleanProp(Map<PluginUtil.CheckerProp,Object> props, PluginUtil.CheckerProp prop, String tag)
public static File writeTmpSrcFofn(String prefix, boolean deleteOnExit, List<File> files) throws IOException
IOExceptionpublic static File writeTmpCpFile(String prefix, boolean deleteOnExit, String classpath) throws IOException
IOExceptionpublic static boolean isWindows()
public static String getJavaCommand(String javaHome, PrintStream out)
public static List<String> getCmd(String executable, File javacPath, File jdkPath, File srcFofn, String processors, String checkerHome, String javaHome, File classPathFofn, String bootClassPath, Map<PluginUtil.CheckerProp,Object> props, PrintStream out, boolean procOnly, String outputDirectory)
public static List<String> getCmdArgsOnly(File srcFofn, String processors, String checkerHome, String javaHome, File classpathFofn, String bootClassPath, Map<PluginUtil.CheckerProp,Object> props, PrintStream out, boolean procOnly, String outputDirectory)
public static List<String> getCmdArgsOnly(File javacPath, File jdkPath, File srcFofn, String processors, String checkerHome, String javaHome, File classpathFofn, String bootClassPath, Map<PluginUtil.CheckerProp,Object> props, PrintStream out, boolean procOnly, String outputDirectory)
public static double getJreVersion()
public static String getJdkJarPrefix()
public static String getJdkJarName()