Class 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 AbstractCompilerMojo
    Compiles application sources
    Since:
    2.0
    • Field Detail

      • compileSourceRoots

        @Parameter(defaultValue="${project.compileSourceRoots}",
                   readonly=true,
                   required=true)
        private java.util.List<java.lang.String> compileSourceRoots
        The source directories containing the sources to be compiled.
      • outputDirectory

        @Parameter(defaultValue="${project.build.outputDirectory}",
                   required=true,
                   readonly=true)
        private java.io.File outputDirectory
        The directory for compiled classes.
      • projectArtifact

        @Parameter(defaultValue="${project.artifact}",
                   readonly=true,
                   required=true)
        private org.apache.maven.artifact.Artifact projectArtifact
        Projects 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 generatedSourcesDirectory

        Specify 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 to true, the classes will be placed in META-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
    • Constructor Detail

      • CompilerMojo

        public CompilerMojo()