Full name:
org.apache.maven.plugins:maven-compiler-plugin:3.6.2:compile
Description:
Attributes:
Name | Type | Since | Description |
---|---|---|---|
allowPartialRequirements | boolean | 2.0 | (no description) |
annotationProcessorPaths | List | 3.5 |
Classpath elements to supply as annotation processor path. If specified, the compiler will detect annotation processors only in those classpath elements. If omitted, the default classpath is used to detect annotation processors. The detection itself depends on the configuration of annotationProcessors. Each classpath element is specified using their Maven coordinates (groupId, artifactId, version, classifier, type). Transitive dependencies are added automatically. Example: <configuration> <annotationProcessorPaths> <path> <groupId>org.sample</groupId> <artifactId>sample-annotation-processor</artifactId> <version>1.2.3</version> </path> <!-- ... more ... --> </annotationProcessorPaths> </configuration> |
annotationProcessors | String[] | 2.2 |
Names of annotation processors to run. Only applies to JDK 1.6+ If not set, the default annotation processors discovery process applies. |
compilerArgs | List | 3.1 |
Sets the arguments to be passed to the compiler if fork is set to true. Example: <compilerArgs> <arg>-Xmaxerrs=1000</arg> <arg>-Xlint</arg> <arg>-J-Duser.language=en_us</arg> </compilerArgs> |
compilerArgument | String | 2.0 |
Sets the unformatted single argument string to be passed to the compiler if fork is set to true. To pass multiple arguments such as -Xmaxerrs 1000 (which are actually two arguments) you have to use compilerArguments. This is because the list of valid arguments passed to a Java compiler varies based on the compiler version. |
compilerArguments | Map | 2.0.1 | Deprecated. use compilerArgs instead. |
compilerId | String | 2.0 | The compiler id of the compiler to use. See this guide for more information. Default value is: javac. User property is: maven.compiler.compilerId. |
compilerReuseStrategy | String | 2.5 | Strategy to re use javacc class created:
Default value is: ${reuseCreated}. User property is: maven.compiler.compilerReuseStrategy. |
compilerVersion | String | 2.0 | Version of the compiler to use, ex. "1.3", "1.5", if
fork is set to true. User property is: maven.compiler.compilerVersion. |
debug | boolean | 2.0 | Set to true to include debugging information in the
compiled class files. Default value is: true. User property is: maven.compiler.debug. |
debuglevel | String | 2.1 | Keyword list to be appended to the -g command-line
switch. Legal values are none or a comma-separated list of the
following keywords: lines, vars, and
source. If debug level is not specified, by default,
nothing will be appended to -g. If debug is not turned
on, this attribute will be ignored. User property is: maven.compiler.debuglevel. |
encoding | String | 2.1 | The -encoding argument for the Java compiler. Default value is: ${project.build.sourceEncoding}. User property is: encoding. |
excludes | Set | 2.0 | A list of exclusion filters for the compiler. |
executable | String | 2.0 | Sets the executable of the compiler to use when fork
is true. User property is: maven.compiler.executable. |
failOnError | boolean | 2.0.2 | Indicates whether the build will continue even if there are
compilation errors. Default value is: true. User property is: maven.compiler.failOnError. |
failOnWarning | boolean | 3.6 | Indicates whether the build will continue even if there are
compilation warnings. Default value is: false. User property is: maven.compiler.failOnWarning. |
fileExtensions | List | 3.1 | file extensions to check timestamp for incremental build default
contains only .class |
forceJavacCompilerUse | boolean | 3.0 | compiler can now use javax.tools if available in your current jdk,
you can disable this feature using
-Dmaven.compiler.forceJavacCompilerUse=true or in the plugin
configuration Default value is: false. User property is: maven.compiler.forceJavacCompilerUse. |
fork | boolean | 2.0 | Allows running the compiler in a separate process. If
false it uses the built in compiler, while if
true it will use an executable. Default value is: false. User property is: maven.compiler.fork. |
generatedSourcesDirectory | File | 2.2 |
Specify where to place generated source files created by annotation processing. Only applies to JDK 1.6+ Default value is: ${project.build.directory}/generated-sources/annotations. |
includes | Set | 2.0 | A list of inclusion filters for the compiler. |
jdkToolchain | Map | 3.6 |
Specify the requirements for this jdk toolchain. This overrules the toolchain selected by the maven-toolchain-plugin. note: requires at least Maven 3.3.1 |
maxmem | String | 2.0.1 | Sets the maximum size, in megabytes, of the memory allocation pool,
ex. "128", "128m" if fork is set to true. User property is: maven.compiler.maxmem. |
meminitial | String | 2.0.1 | Initial size, in megabytes, of the memory allocation pool, ex.
"64", "64m" if fork is set to true. User property is: maven.compiler.meminitial. |
optimize | boolean | 2.0 | Set to true to optimize the compiled code using the
compiler's optimization methods. Default value is: false. User property is: maven.compiler.optimize. |
outputFileName | String | 2.0 | Sets the name of the output file when compiling a set of sources to
a single file. expression="${project.build.finalName}" |
parameters | boolean | 3.6.2 | Set to true to generate metadata for reflection on
method parameters. Default value is: false. User property is: maven.compiler.parameters. |
proc | String | 2.2 |
Sets whether annotation processing is performed or not. Only applies to JDK 1.6+ If not set, both compilation and annotation processing are performed at the same time. Allowed values are:
|
release | String | 3.6 | The -release argument for the Java compiler, supported since Java9 User property is: maven.compiler.release. |
showDeprecation | boolean | 2.0 | Sets whether to show source locations where deprecated APIs are
used. Default value is: false. User property is: maven.compiler.showDeprecation. |
showWarnings | boolean | 2.0 | Set to true to show compilation warnings. Default value is: false. User property is: maven.compiler.showWarnings. |
skipMain | boolean | 2.0 | Set this to 'true' to bypass compilation of main sources. Its use
is NOT RECOMMENDED, but quite convenient on occasion. User property is: maven.main.skip. |
skipMultiThreadWarning | boolean | 2.5 | (no description) Default value is: false. User property is: maven.compiler.skipMultiThreadWarning. |
source | String | 2.0 | The -source argument for the Java compiler. Default value is: 1.5. User property is: maven.compiler.source. |
staleMillis | int | 2.0 | Sets the granularity in milliseconds of the last modification date
for testing whether a source needs recompilation. Default value is: 0. User property is: lastModGranularityMs. |
target | String | 2.0 | The -target argument for the Java compiler. Default value is: 1.5. User property is: maven.compiler.target. |
useIncrementalCompilation | boolean | 3.1 | to enable/disable incrementation compilation feature Default value is: true. User property is: maven.compiler.useIncrementalCompilation. |
verbose | boolean | 2.0 | Set to true to show messages about what the compiler
is doing. Default value is: false. User property is: maven.compiler.verbose. |
Classpath elements to supply as annotation processor path. If specified, the compiler will detect annotation processors only in those classpath elements. If omitted, the default classpath is used to detect annotation processors. The detection itself depends on the configuration of annotationProcessors.
Each classpath element is specified using their Maven coordinates (groupId, artifactId, version, classifier, type). Transitive dependencies are added automatically. Example:
<configuration> <annotationProcessorPaths> <path> <groupId>org.sample</groupId> <artifactId>sample-annotation-processor</artifactId> <version>1.2.3</version> </path> <!-- ... more ... --> </annotationProcessorPaths> </configuration>
Names of annotation processors to run. Only applies to JDK 1.6+ If not set, the default annotation processors discovery process applies.
Sets the arguments to be passed to the compiler if fork is set to true. Example:
<compilerArgs> <arg>-Xmaxerrs=1000</arg> <arg>-Xlint</arg> <arg>-J-Duser.language=en_us</arg> </compilerArgs>
Sets the unformatted single argument string to be passed to the compiler if fork is set to true. To pass multiple arguments such as -Xmaxerrs 1000 (which are actually two arguments) you have to use compilerArguments.
This is because the list of valid arguments passed to a Java compiler varies based on the compiler version.
Sets the arguments to be passed to the compiler (prepending a dash) if fork is set to true.
This is because the list of valid arguments passed to a Java compiler varies based on the compiler version.
To pass -Xmaxerrs 1000 -Xlint -Xlint:-path -Averbose=true you should include the following:
<compilerArguments> <Xmaxerrs>1000</Xmaxerrs> <Xlint/> <Xlint:-path/> <Averbose>true</Averbose> </compilerArguments>
fork:
Specify where to place generated source files created by annotation processing. Only applies to JDK 1.6+
Specify the requirements for this jdk toolchain. This overrules the toolchain selected by the maven-toolchain-plugin.
note: requires at least Maven 3.3.1proc:
Sets whether annotation processing is performed or not. Only applies to JDK 1.6+ If not set, both compilation and annotation processing are performed at the same time.
Allowed values are: