java.lang.Object
org.aspectj.org.eclipse.jdt.internal.compiler.batch.Main
All Implemented Interfaces:
ProblemSeverities, SuffixConstants
Direct Known Subclasses:
BuildArgParser

public class Main extends Object implements ProblemSeverities, SuffixConstants
  • Field Details

    • batchCompiler

      public Compiler batchCompiler
    • bundle

      public ResourceBundle bundle
    • checkedClasspaths

      protected FileSystem.Classpath[] checkedClasspaths
    • module

      protected IModule module
    • annotationPaths

      protected List<String> annotationPaths
    • annotationsFromClasspath

      protected boolean annotationsFromClasspath
    • rootModules

      public Set<String> rootModules
    • limitedModules

      public Set<String> limitedModules
    • compilerLocale

      public Locale compilerLocale
    • compilerOptions

      public CompilerOptions compilerOptions
    • progress

      public CompilationProgress progress
    • destinationPath

      public String destinationPath
    • destinationPaths

      public String[] destinationPaths
    • enablePreview

      protected boolean enablePreview
    • releaseVersion

      protected String releaseVersion
    • encodings

      public String[] encodings
    • exportedClassFilesCounter

      public int exportedClassFilesCounter
    • filenames

      public String[] filenames
    • modNames

      public String[] modNames
    • classNames

      public String[] classNames
    • globalErrorsCount

      public int globalErrorsCount
    • globalProblemsCount

      public int globalProblemsCount
    • globalTasksCount

      public int globalTasksCount
    • globalWarningsCount

      public int globalWarningsCount
    • globalInfoCount

      public int globalInfoCount
    • lineCount0

      public long lineCount0
    • log

      public String log
    • logger

      public Main.Logger logger
    • maxProblems

      public int maxProblems
    • options

      public Map<String,​String> options
    • complianceLevel

      protected long complianceLevel
    • ignoreOptionalProblemsFromFolders

      public char[][] ignoreOptionalProblemsFromFolders
    • out

      protected PrintWriter out
    • proceed

      public boolean proceed
    • proceedOnError

      public boolean proceedOnError
    • failOnWarning

      public boolean failOnWarning
    • produceRefInfo

      public boolean produceRefInfo
    • currentRepetition

      public int currentRepetition
    • maxRepetition

      public int maxRepetition
    • showProgress

      public boolean showProgress
    • startTime

      public long startTime
    • pendingErrors

      public ArrayList<String> pendingErrors
    • systemExitWhenFinished

      public boolean systemExitWhenFinished
    • TIMING_DISABLED

      public static final int TIMING_DISABLED
      See Also:
      Constant Field Values
    • TIMING_ENABLED

      public static final int TIMING_ENABLED
      See Also:
      Constant Field Values
    • TIMING_DETAILED

      public static final int TIMING_DETAILED
      See Also:
      Constant Field Values
    • timing

      public int timing
    • compilerStats

      public CompilerStats[] compilerStats
    • verbose

      public boolean verbose
    • extraProblems

      protected ArrayList<CategorizedProblem> extraProblems
    • bundleName

      public static final String bundleName
      See Also:
      Constant Field Values
    • aspectjLocale

      public static final Locale aspectjLocale
    • DEFAULT_SIZE_CLASSPATH

      public static final int DEFAULT_SIZE_CLASSPATH
      See Also:
      Constant Field Values
    • NONE

      public static final String NONE
      See Also:
      Constant Field Values
  • Constructor Details

  • Method Details

    • compile

      public static boolean compile​(String commandLine)
      Deprecated.
      - use BatchCompiler.compile(String, PrintWriter, PrintWriter, CompilationProgress) instead e.g. BatchCompiler.compile(commandLine, new PrintWriter(System.out), new PrintWriter(System.err), null);
    • compile

      public static boolean compile​(String commandLine, PrintWriter outWriter, PrintWriter errWriter)
      Deprecated.
      - use BatchCompiler.compile(String, PrintWriter, PrintWriter, CompilationProgress) instead e.g. BatchCompiler.compile(commandLine, outWriter, errWriter, null);
    • compile

      public static boolean compile​(String[] commandLineArguments, PrintWriter outWriter, PrintWriter errWriter, CompilationProgress progress)
    • getLibrariesFiles

      public static File[][] getLibrariesFiles​(File[] files)
    • main

      public static void main​(String[] argv)
    • tokenize

      public static String[] tokenize​(String commandLine)
    • printVersion

      public void printVersion()
    • addExtraProblems

      public void addExtraProblems​(CategorizedProblem problem)
    • addNewEntry

      protected void addNewEntry​(ArrayList<FileSystem.Classpath> paths, String currentClasspathName, ArrayList<String> currentRuleSpecs, String customEncoding, String destPath, boolean isSourceOnly, boolean rejectDestinationPathOnJars)
    • bind

      public String bind​(String id)
    • bind

      public String bind​(String id, String binding)
    • _bind

      public static String _bind​(String id, String[] arguments)
    • bind

      public String bind​(String id, String binding1, String binding2)
    • bind

      public String bind​(String id, String[] arguments)
    • checkVMVersion

      protected boolean checkVMVersion​(long minimalSupportedVersion)
      Return true if and only if the running VM supports the given minimal version.

      This only checks the major version, since the minor version is always 0 (at least for the useful cases).

      The given minimalSupportedVersion is one of the constants:

      • org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_1
      • org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_2
      • org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_3
      • org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_4
      • org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_5
      • org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_6
      • org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_7
      • org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_8
      • org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK9
      • org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK10
      • org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK11
      • org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK12
      • org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK13
      • org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK14
      Parameters:
      minimalSupportedVersion - the given minimal version
      Returns:
      true if and only if the running VM supports the given minimal version, false otherwise
    • compile

      public boolean compile​(String[] argv)
    • configure

      public void configure​(String[] argv)
    • getModuleDesc

      public IModule getModuleDesc​(String moduleArgument)
    • enableAll

      protected void enableAll​(int severity)
    • disableAll

      protected void disableAll​(int severity)
    • extractDestinationPathFromSourceFile

      public String extractDestinationPathFromSourceFile​(CompilationResult result)
    • getBatchRequestor

      public ICompilerRequestor getBatchRequestor()
    • getCompilationUnits

      public CompilationUnit[] getCompilationUnits()
    • getHandlingPolicy

      public IErrorHandlingPolicy getHandlingPolicy()
    • getJavaHome

      public File getJavaHome()
    • getLibraryAccess

      public FileSystem getLibraryAccess()
    • getProblemFactory

      public IProblemFactory getProblemFactory()
    • handleBootclasspath

      protected ArrayList<FileSystem.Classpath> handleBootclasspath​(ArrayList<String> bootclasspaths, String customEncoding)
    • handleModulepath

      protected ArrayList<FileSystem.Classpath> handleModulepath​(String arg)
    • handleModuleSourcepath

      protected ArrayList<FileSystem.Classpath> handleModuleSourcepath​(String arg)
    • handleClasspath

      protected ArrayList<FileSystem.Classpath> handleClasspath​(ArrayList<String> classpaths, String customEncoding)
    • handleEndorseddirs

      protected ArrayList<FileSystem.Classpath> handleEndorseddirs​(ArrayList<String> endorsedDirClasspaths)
    • handleExtdirs

      protected ArrayList<FileSystem.Classpath> handleExtdirs​(ArrayList<String> extdirsClasspaths)
    • isIgnored

      protected boolean isIgnored​(IProblem problem)
    • handleInfoToken

      protected void handleInfoToken​(String token, boolean isEnabling)
    • handleWarningToken

      protected void handleWarningToken​(String token, boolean isEnabling)
    • handleErrorToken

      protected void handleErrorToken​(String token, boolean isEnabling)
    • initialize

      protected void initialize​(PrintWriter outWriter, PrintWriter errWriter, boolean systemExit)
      Deprecated.
      - use initialize(PrintWriter, PrintWriter, boolean, Map, CompilationProgress) instead e.g. initialize(outWriter, errWriter, systemExit, null, null)
    • initialize

      protected void initialize​(PrintWriter outWriter, PrintWriter errWriter, boolean systemExit, Map<String,​String> customDefaultOptions)
      Deprecated.
      - use initialize(PrintWriter, PrintWriter, boolean, Map, CompilationProgress) instead e.g. initialize(outWriter, errWriter, systemExit, customDefaultOptions, null)
    • initialize

      protected void initialize​(PrintWriter outWriter, PrintWriter errWriter, boolean systemExit, Map<String,​String> customDefaultOptions, CompilationProgress compilationProgress)
    • initializeAnnotationProcessorManager

      protected void initializeAnnotationProcessorManager()
    • outputClassFiles

      public void outputClassFiles​(CompilationResult unitResult)
    • performCompilation

      public void performCompilation()
    • loggingExtraProblems

      protected void loggingExtraProblems()
    • printUsage

      public void printUsage()
    • initRootModules

      protected void initRootModules​(LookupEnvironment environment, FileSystem fileSystem)
    • processPathEntries

      public void processPathEntries​(int defaultSize, ArrayList<FileSystem.Classpath> paths, String currentPath, String customEncoding, boolean isSourceOnly, boolean rejectDestinationPathOnJars)
    • relocalize

      public void relocalize()
      Creates a NLS catalog for the given locale.
    • setDestinationPath

      public void setDestinationPath​(String dest)
    • setLocale

      public void setLocale​(Locale locale)
    • setPaths

      protected void setPaths​(ArrayList<String> bootclasspaths, String sourcepathClasspathArg, ArrayList<String> sourcepathClasspaths, ArrayList<String> classpaths, String modulePath, String moduleSourcepath, ArrayList<String> extdirsClasspaths, ArrayList<String> endorsedDirClasspaths, String customEncoding)
    • shouldIgnoreOptionalProblems

      public static final boolean shouldIgnoreOptionalProblems​(char[][] folderNames, char[] fileName)
    • validateClasspathOptions

      protected long validateClasspathOptions​(ArrayList<String> bootclasspaths, ArrayList<String> endorsedDirClasspaths, ArrayList<String> extdirsClasspaths)
    • validateOptions

      protected void validateOptions​(boolean didSpecifyCompliance)