Package org.apache.maven.plugin.compiler
Class CompilerMojo
- java.lang.Object
-
- org.apache.maven.plugin.AbstractMojo
-
- org.apache.maven.plugin.compiler.AbstractCompilerMojo
-
- org.apache.maven.plugin.compiler.CompilerMojo
-
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled,org.apache.maven.plugin.Mojo
- Direct Known Subclasses:
CompilerMojo
@Mojo(name="compile", defaultPhase=COMPILE, threadSafe=true, requiresDependencyResolution=COMPILE) public class CompilerMojo extends AbstractCompilerMojoCompiles application sources- Since:
- 2.0
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<java.lang.String>classpathElementsprivate java.util.List<java.lang.String>compilePathprivate java.util.List<java.lang.String>compileSourceRootsThe source directories containing the sources to be compiled.private java.util.Set<java.lang.String>excludesA list of exclusion filters for the compiler.private java.io.FilegeneratedSourcesDirectorySpecify where to place generated source files created by annotation processing.private java.util.Set<java.lang.String>includesA list of inclusion filters for the compiler.private org.codehaus.plexus.languages.java.jpms.LocationManagerlocationManagerprivate java.util.List<java.lang.String>modulepathElementsprivate booleanmultiReleaseOutputWhen set totrue, the classes will be placed inMETA-INF/versions/${release}The release value must be set, otherwise the plugin will fail.private java.io.FileoutputDirectoryThe directory for compiled classes.private java.util.Map<java.lang.String,org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor>pathElementsprivate org.apache.maven.artifact.ArtifactprojectArtifactProjects main artifact.private booleanskipMainSet this to 'true' to bypass compilation of main sources.-
Fields inherited from class org.apache.maven.plugin.compiler.AbstractCompilerMojo
compilerArgs, compilerArgument, compilerArguments, DEFAULT_SOURCE, DEFAULT_TARGET, MODULE_INFO_TARGET, PS, release, source, target
-
-
Constructor Summary
Constructors Constructor Description CompilerMojo()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voiddetectFilenameBasedAutomodules(org.codehaus.plexus.languages.java.jpms.ResolvePathsResult<java.io.File> resolvePathsResult, org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor moduleDescriptor)voidexecute()protected java.util.List<java.lang.String>getClasspathElements()private java.util.List<java.io.File>getCompileClasspathElements(org.apache.maven.project.MavenProject project)protected java.lang.StringgetCompilerArgument()protected java.util.Map<java.lang.String,java.lang.String>getCompilerArguments()protected java.util.List<java.lang.String>getCompileSourceRoots()protected java.io.FilegetGeneratedSourcesDirectory()protected java.util.List<java.lang.String>getModulepathElements()protected java.io.FilegetOutputDirectory()protected java.util.Map<java.lang.String,org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor>getPathElements()protected java.lang.StringgetRelease()protected java.lang.StringgetSource()protected org.codehaus.plexus.compiler.util.scan.SourceInclusionScannergetSourceInclusionScanner(int staleMillis)protected org.codehaus.plexus.compiler.util.scan.SourceInclusionScannergetSourceInclusionScanner(java.lang.String inputFileEnding)protected java.lang.StringgetTarget()protected voidpreparePaths(java.util.Set<java.io.File> sourceFiles)private voidwriteBoxedWarning(java.lang.String message)-
Methods inherited from class org.apache.maven.plugin.compiler.AbstractCompilerMojo
convertToCompilerResult, getBuildStartTime, getProject, getRequestThreadCount, getToolchain, isDependencyChanged, isTestCompile, setRelease, setTarget
-
-
-
-
Field Detail
-
compileSourceRoots
@Parameter(defaultValue="${project.compileSourceRoots}", readonly=true, required=true) private java.util.List<java.lang.String> compileSourceRootsThe source directories containing the sources to be compiled.
-
outputDirectory
@Parameter(defaultValue="${project.build.outputDirectory}", required=true, readonly=true) private java.io.File outputDirectoryThe directory for compiled classes.
-
projectArtifact
@Parameter(defaultValue="${project.artifact}", readonly=true, required=true) private org.apache.maven.artifact.Artifact projectArtifactProjects main artifact.
-
includes
@Parameter private java.util.Set<java.lang.String> includes
A list of inclusion filters for the compiler.
-
excludes
@Parameter private java.util.Set<java.lang.String> excludes
A list of exclusion filters for the compiler.
-
generatedSourcesDirectory
@Parameter(defaultValue="${project.build.directory}/generated-sources/annotations") private java.io.File generatedSourcesDirectorySpecify where to place generated source files created by annotation processing. Only applies to JDK 1.6+
- Since:
- 2.2
-
skipMain
@Parameter(property="maven.main.skip") private boolean skipMain
Set this to 'true' to bypass compilation of main sources. Its use is NOT RECOMMENDED, but quite convenient on occasion.
-
compilePath
@Parameter(defaultValue="${project.compileClasspathElements}", readonly=true, required=true) private java.util.List<java.lang.String> compilePath
-
multiReleaseOutput
@Parameter private boolean multiReleaseOutput
When set totrue, the classes will be placed inMETA-INF/versions/${release}The release value must be set, otherwise the plugin will fail.- Since:
- 3.7.1
-
locationManager
@Component private org.codehaus.plexus.languages.java.jpms.LocationManager locationManager
-
classpathElements
private java.util.List<java.lang.String> classpathElements
-
modulepathElements
private java.util.List<java.lang.String> modulepathElements
-
pathElements
private java.util.Map<java.lang.String,org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor> pathElements
-
-
Method Detail
-
getCompileSourceRoots
protected java.util.List<java.lang.String> getCompileSourceRoots()
- Specified by:
getCompileSourceRootsin classAbstractCompilerMojo
-
getClasspathElements
protected java.util.List<java.lang.String> getClasspathElements()
- Specified by:
getClasspathElementsin classAbstractCompilerMojo
-
getModulepathElements
protected java.util.List<java.lang.String> getModulepathElements()
- Specified by:
getModulepathElementsin classAbstractCompilerMojo
-
getPathElements
protected java.util.Map<java.lang.String,org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor> getPathElements()
- Specified by:
getPathElementsin classAbstractCompilerMojo
-
getOutputDirectory
protected java.io.File getOutputDirectory()
- Specified by:
getOutputDirectoryin classAbstractCompilerMojo
-
execute
public void execute() throws org.apache.maven.plugin.MojoExecutionException, CompilationFailureException- Specified by:
executein interfaceorg.apache.maven.plugin.Mojo- Overrides:
executein classAbstractCompilerMojo- Throws:
org.apache.maven.plugin.MojoExecutionExceptionCompilationFailureException
-
preparePaths
protected void preparePaths(java.util.Set<java.io.File> sourceFiles)
- Specified by:
preparePathsin classAbstractCompilerMojo
-
detectFilenameBasedAutomodules
private void detectFilenameBasedAutomodules(org.codehaus.plexus.languages.java.jpms.ResolvePathsResult<java.io.File> resolvePathsResult, org.codehaus.plexus.languages.java.jpms.JavaModuleDescriptor moduleDescriptor)
-
getCompileClasspathElements
private java.util.List<java.io.File> getCompileClasspathElements(org.apache.maven.project.MavenProject project)
-
getSourceInclusionScanner
protected org.codehaus.plexus.compiler.util.scan.SourceInclusionScanner getSourceInclusionScanner(int staleMillis)
- Specified by:
getSourceInclusionScannerin classAbstractCompilerMojo
-
getSourceInclusionScanner
protected org.codehaus.plexus.compiler.util.scan.SourceInclusionScanner getSourceInclusionScanner(java.lang.String inputFileEnding)
- Specified by:
getSourceInclusionScannerin classAbstractCompilerMojo
-
getSource
protected java.lang.String getSource()
- Specified by:
getSourcein classAbstractCompilerMojo
-
getTarget
protected java.lang.String getTarget()
- Specified by:
getTargetin classAbstractCompilerMojo
-
getRelease
protected java.lang.String getRelease()
- Specified by:
getReleasein classAbstractCompilerMojo
-
getCompilerArgument
protected java.lang.String getCompilerArgument()
- Specified by:
getCompilerArgumentin classAbstractCompilerMojo
-
getCompilerArguments
protected java.util.Map<java.lang.String,java.lang.String> getCompilerArguments()
- Specified by:
getCompilerArgumentsin classAbstractCompilerMojo
-
getGeneratedSourcesDirectory
protected java.io.File getGeneratedSourcesDirectory()
- Specified by:
getGeneratedSourcesDirectoryin classAbstractCompilerMojo
-
writeBoxedWarning
private void writeBoxedWarning(java.lang.String message)
-
-