Package org.aspectj.ajdt.ajc
Class BuildArgParser
java.lang.Object
org.aspectj.org.eclipse.jdt.internal.compiler.batch.Main
org.aspectj.ajdt.ajc.BuildArgParser
- All Implemented Interfaces:
ProblemSeverities,SuffixConstants
-
Nested Class Summary
Nested classes/interfaces inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.batch.Main
Main.Logger, Main.ResourceBundleFactory -
Field Summary
Fields inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.batch.Main
annotationPaths, annotationsFromClasspath, aspectjLocale, batchCompiler, bundle, bundleName, checkedClasspaths, classNames, compilerLocale, compilerOptions, compilerStats, complianceLevel, currentRepetition, DEFAULT_SIZE_CLASSPATH, destinationPath, destinationPaths, enablePreview, encodings, exportedClassFilesCounter, extraProblems, failOnWarning, filenames, globalErrorsCount, globalInfoCount, globalProblemsCount, globalTasksCount, globalWarningsCount, ignoreOptionalProblemsFromFolders, limitedModules, lineCount0, log, logger, maxProblems, maxRepetition, modNames, module, NONE, options, out, pendingErrors, proceed, proceedOnError, produceRefInfo, progress, releaseVersion, rootModules, showProgress, startTime, systemExitWhenFinished, timing, TIMING_DETAILED, TIMING_DISABLED, TIMING_ENABLED, verboseFields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.problem.ProblemSeverities
Abort, AbortCompilation, AbortCompilationUnit, AbortMethod, AbortType, CoreSeverityMASK, Error, Fatal, Ignore, Info, InternalError, Optional, SecondaryError, WarningFields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.util.SuffixConstants
EXTENSION_aj, EXTENSION_AJ, EXTENSION_class, EXTENSION_CLASS, EXTENSION_java, EXTENSION_JAVA, EXTENSION_jmod, EXTENSION_JMOD, SUFFIX_aj, SUFFIX_AJ, SUFFIX_class, SUFFIX_CLASS, SUFFIX_java, SUFFIX_JAVA, SUFFIX_STRING_aj, SUFFIX_STRING_AJ, SUFFIX_STRING_class, SUFFIX_STRING_CLASS, SUFFIX_STRING_java, SUFFIX_STRING_JAVA -
Constructor Summary
ConstructorsConstructorDescriptionBuildArgParser(PrintWriter writer, IMessageHandler handler) Overrides super's bundle.BuildArgParser(IMessageHandler handler) Set up to capture messages using getOtherMessages(boolean) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddExtraProblems(CategorizedProblem problem) booleancheckVMVersion(long minimalSupportedVersion) Return true if and only if the running VM supports the given minimal version.genBuildConfig(String[] args) Generate build configuration for the input args, passing to handler any error messages.getBootclasspath(org.aspectj.ajdt.ajc.BuildArgParser.AjcConfigParser parser) getClasspath(org.aspectj.ajdt.ajc.BuildArgParser.AjcConfigParser parser) If the classpath is not set, we use the environment's java.class.path, but remove the aspectjtools.jar entry from that list in order to prevent wierd bootstrap issues (refer to bug#39959).getModulepath(org.aspectj.ajdt.ajc.BuildArgParser.AjcConfigParser parser) getModulesourcepath(org.aspectj.ajdt.ajc.BuildArgParser.AjcConfigParser parser) getOtherMessages(boolean flush) Get messages not dumped to handler or any PrintWriter.static StringgetUsage()static StringhandleClasspath(ArrayList<String> classpaths, String customEncoding) voidvoidinitRootModules(LookupEnvironment environment, FileSystem fileSystem) populateBuildConfig(AjBuildConfig buildConfig, String[] args, boolean setClasspath, File configFile) Generate build configuration for the input arguments, passing to handler any error messages.voidMethods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.batch.Main
_bind, addNewEntry, bind, bind, bind, bind, compile, compile, compile, compile, configure, disableAll, enableAll, extractDestinationPathFromSourceFile, getBatchRequestor, getCompilationUnits, getHandlingPolicy, getJavaHome, getLibrariesFiles, getLibraryAccess, getModuleDesc, getProblemFactory, handleBootclasspath, handleEndorseddirs, handleErrorToken, handleExtdirs, handleInfoToken, handleModulepath, handleModuleSourcepath, handleWarningToken, initialize, initialize, initialize, isIgnored, loggingExtraProblems, main, outputClassFiles, performCompilation, printUsage, processPathEntries, relocalize, setDestinationPath, setLocale, setPaths, shouldIgnoreOptionalProblems, tokenize, validateClasspathOptions, validateOptions
-
Constructor Details
-
BuildArgParser
Overrides super's bundle. -
BuildArgParser
Set up to capture messages using getOtherMessages(boolean)
-
-
Method Details
-
getUsage
- Returns:
- multi-line String usage for the compiler
-
getXOptionUsage
-
genBuildConfig
Generate build configuration for the input args, passing to handler any error messages.- Parameters:
args- the String[] arguments for the build configuration- Returns:
- AjBuildConfig per args, which will be invalid unless there are no handler errors.
-
populateBuildConfig
public AjBuildConfig populateBuildConfig(AjBuildConfig buildConfig, String[] args, boolean setClasspath, File configFile) Generate build configuration for the input arguments, passing to handler any error messages.- Parameters:
args- the String[] arguments for the build configurationsetClasspath- determines if the classpath should be parsed and set on the build configurationconfigFile- can be null- Returns:
- AjBuildConfig per arguments, which will be invalid unless there are no handler errors.
-
printVersion
public void printVersion()- Overrides:
printVersionin classMain
-
addExtraProblems
- Overrides:
addExtraProblemsin classMain
-
initializeAnnotationProcessorManager
public void initializeAnnotationProcessorManager()- Overrides:
initializeAnnotationProcessorManagerin classMain
-
getOtherMessages
Get messages not dumped to handler or any PrintWriter.- Parameters:
flush- if true, empty errors- Returns:
- null if none, String otherwise
- See Also:
-
getBootclasspath
-
getModulepath
-
getModulesourcepath
-
handleClasspath
public ArrayList<FileSystem.Classpath> handleClasspath(ArrayList<String> classpaths, String customEncoding) - Overrides:
handleClasspathin classMain
-
getClasspath
If the classpath is not set, we use the environment's java.class.path, but remove the aspectjtools.jar entry from that list in order to prevent wierd bootstrap issues (refer to bug#39959). -
getCheckedClasspaths
-
checkVMVersion
public boolean checkVMVersion(long minimalSupportedVersion) Description copied from class:MainReturn 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_1org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_2org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_3org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_4org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_5org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_6org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_7org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK1_8org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK9org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK10org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK11org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK12org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK13org.aspectj.org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants.JDK14
- Overrides:
checkVMVersionin classMain- Parameters:
minimalSupportedVersion- the given minimal version- Returns:
- true if and only if the running VM supports the given minimal version, false otherwise
-
initRootModules
- Overrides:
initRootModulesin classMain
-