Package org.bsc.maven.plugin.processor
Class AbstractAnnotationProcessorMojo
- java.lang.Object
-
- org.apache.maven.plugin.AbstractMojo
-
- org.bsc.maven.plugin.processor.AbstractAnnotationProcessorMojo
-
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled,org.apache.maven.plugin.Mojo
- Direct Known Subclasses:
MainAnnotationProcessorMojo,TestAnnotationProcessorMojo
public abstract class AbstractAnnotationProcessorMojo extends org.apache.maven.plugin.AbstractMojo- Author:
- bsorrentino
-
-
Field Summary
Fields Modifier and Type Field Description protected org.codehaus.plexus.compiler.manager.CompilerManagercompilerManagerPlexus compiler manager.protected booleanforkAllows running the compiler in a separate process.protected org.apache.maven.project.MavenProjectprojectprotected org.apache.maven.execution.MavenSessionsessionMaven Sessionprotected booleanskipSet this to true to skip annotation processing.protected booleanskipSourcesUnchangedSet this to true to skip annotation processing when there are no changes in the source files compared to the generated files.
-
Constructor Summary
Constructors Constructor Description AbstractAnnotationProcessorMojo()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract voidaddCompileSourceRoot(org.apache.maven.project.MavenProject project, String dir)voidexecute()protected abstract List<String>getAllCompileSourceRoots()protected abstract Set<String>getClasspathElements(Set<String> result)abstract FilegetDefaultOutputDirectory()protected abstract FilegetOutputClassDirectory()protected abstract Set<String>getResourcesElements(Set<String> result)protected abstract Set<File>getSourceDirectories(Set<File> result)
-
-
-
Field Detail
-
project
@Parameter(defaultValue="${project}", readonly=true) protected org.apache.maven.project.MavenProject project
-
skip
@Parameter(defaultValue="false", property="skipAnnotationProcessing") protected boolean skipSet this to true to skip annotation processing.- Since:
- 3.1.0
-
fork
@Parameter(defaultValue="false", property="fork") protected boolean forkAllows running the compiler in a separate process. If false it uses the built in compiler, while if true it will use an executable. to set source and target usemaven.processor.source maven.processor.target
- Since:
- 3.3
-
skipSourcesUnchanged
@Parameter(defaultValue="false", property="skipSourcesUnchangedAnnotationProcessing") protected boolean skipSourcesUnchangedSet this to true to skip annotation processing when there are no changes in the source files compared to the generated files.- Since:
- 4.3
-
session
@Parameter(defaultValue="${session}", readonly=true) protected org.apache.maven.execution.MavenSession sessionMaven Session- Since:
- 3.3
-
compilerManager
@Component protected org.codehaus.plexus.compiler.manager.CompilerManager compilerManager
Plexus compiler manager.- Since:
- 3.3
-
-
Method Detail
-
getSourceDirectories
protected abstract Set<File> getSourceDirectories(Set<File> result)
- Returns:
- supported source directories
-
getOutputClassDirectory
protected abstract File getOutputClassDirectory()
- Returns:
- output folder
-
addCompileSourceRoot
protected abstract void addCompileSourceRoot(org.apache.maven.project.MavenProject project, String dir)- Parameters:
project-dir-
-
getDefaultOutputDirectory
public abstract File getDefaultOutputDirectory()
- Returns:
-
execute
public void execute() throws org.apache.maven.plugin.MojoExecutionException- Throws:
org.apache.maven.plugin.MojoExecutionException
-
-