Class AbstractCompilerMojo
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled
,org.apache.maven.plugin.Mojo
- Direct Known Subclasses:
CompilerMojo
,TestCompilerMojo
- Since:
- 2.0
- Author:
- others, Trygve Laugstøl
-
Field Summary
Modifier and TypeFieldDescriptionSets the arguments to be passed to the compiler.protected String
Sets the unformatted single argument string to be passed to the compiler.Deprecated.protected static final String
protected String
The -release argument for the Java compiler, supported since Java9protected String
The -source argument for the Java compiler.protected String
The -target argument for the Java compiler.Fields inherited from interface org.apache.maven.plugin.Mojo
ROLE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
execute()
protected Date
protected abstract String
protected abstract String
protected abstract File
protected abstract File
protected final org.apache.maven.project.MavenProject
protected abstract String
protected int
try to get thread count if a Maven 3 build, using reflection as the plugin must not be maven3 api dependentprotected abstract String
protected abstract org.codehaus.plexus.compiler.util.scan.SourceInclusionScanner
getSourceInclusionScanner
(int staleMillis) protected abstract org.codehaus.plexus.compiler.util.scan.SourceInclusionScanner
getSourceInclusionScanner
(String inputFileEnding) protected abstract String
protected final org.apache.maven.toolchain.Toolchain
protected boolean
We just compare the timestamps of all local dependency files (inter-module dependency classpath) and the own generated classes and if we got a file which is >= the build-started timestamp, then we caught a file which got changed during this build.protected boolean
protected abstract void
preparePaths
(Set<File> sourceFiles) void
setRelease
(String release) void
Methods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
-
Field Details
-
PS
-
source
The -source argument for the Java compiler.
NOTE:
Since 3.8.0 the default value has changed from 1.5 to 1.6
Since 3.9.0 the default value has changed from 1.6 to 1.7
Since 3.11.0 the default value has changed from 1.7 to 1.8
-
target
The -target argument for the Java compiler.
NOTE:
Since 3.8.0 the default value has changed from 1.5 to 1.6
Since 3.9.0 the default value has changed from 1.6 to 1.7
Since 3.11.0 the default value has changed from 1.7 to 1.8
-
release
The -release argument for the Java compiler, supported since Java9- Since:
- 3.6
-
compilerArguments
Deprecated.usecompilerArgs
instead.Sets the arguments to be passed to the compiler (prepending a dash).
This is because the list of valid arguments passed to a Java compiler varies based on the compiler version.
Note that
-J
options are only passed through iffork
is set totrue
.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>
- Since:
- 2.0.1
-
compilerArgs
Sets the arguments to be passed to the compiler.
Note that
Example:-J
options are only passed through iffork
is set totrue
.<compilerArgs> <arg>-Xmaxerrs</arg> <arg>1000</arg> <arg>-Xlint</arg> <arg>-J-Duser.language=en_us</arg> </compilerArgs>
- Since:
- 3.1
-
compilerArgument
Sets the unformatted single argument string to be passed to the compiler. To pass multiple arguments such as
-Xmaxerrs 1000
(which are actually two arguments) you have to usecompilerArguments
.This is because the list of valid arguments passed to a Java compiler varies based on the compiler version.
Note that
-J
options are only passed through iffork
is set totrue
.
-
-
Constructor Details
-
AbstractCompilerMojo
public AbstractCompilerMojo()
-
-
Method Details
-
getSourceInclusionScanner
protected abstract org.codehaus.plexus.compiler.util.scan.SourceInclusionScanner getSourceInclusionScanner(int staleMillis) -
getSourceInclusionScanner
protected abstract org.codehaus.plexus.compiler.util.scan.SourceInclusionScanner getSourceInclusionScanner(String inputFileEnding) -
getClasspathElements
-
getModulepathElements
-
getPathElements
-
getCompileSourceRoots
-
preparePaths
-
getOutputDirectory
-
getSource
-
getTarget
-
getRelease
-
getCompilerArgument
-
getCompilerArguments
-
getGeneratedSourcesDirectory
-
getDebugFileName
-
getProject
protected final org.apache.maven.project.MavenProject getProject() -
execute
public void execute() throws org.apache.maven.plugin.MojoExecutionException, CompilationFailureException- Throws:
org.apache.maven.plugin.MojoExecutionException
CompilationFailureException
-
isTestCompile
protected boolean isTestCompile() -
getIncludes
-
getExcludes
-
getRequestThreadCount
protected int getRequestThreadCount()try to get thread count if a Maven 3 build, using reflection as the plugin must not be maven3 api dependent- Returns:
- number of thread for this build or 1 if not multi-thread build
-
getBuildStartTime
-
getToolchain
protected final org.apache.maven.toolchain.Toolchain getToolchain() -
isDependencyChanged
protected boolean isDependencyChanged()We just compare the timestamps of all local dependency files (inter-module dependency classpath) and the own generated classes and if we got a file which is >= the build-started timestamp, then we caught a file which got changed during this build.- Returns:
true
if at least one single dependency has changed.
-
setTarget
-
setRelease
-
compilerArgs
instead.