Class GroovyCompile

  • All Implemented Interfaces:
    java.lang.Comparable<Task>, org.gradle.api.internal.DynamicObjectAware, org.gradle.api.internal.IConventionAware, org.gradle.api.internal.TaskInternal, org.gradle.api.internal.tasks.compile.HasCompileOptions, Named, ExtensionAware, Task, PatternFilterable, Configurable<Task>

    @CacheableTask
    public abstract class GroovyCompile
    extends AbstractCompile
    implements org.gradle.api.internal.tasks.compile.HasCompileOptions
    Compiles Groovy source files, and optionally, Java source files.
    • Constructor Detail

      • GroovyCompile

        public GroovyCompile()
    • Method Detail

      • getAstTransformationClasspath

        @Classpath
        public ConfigurableFileCollection getAstTransformationClasspath()
        The classpath containing AST transformations and their dependencies.
        Since:
        5.6
      • compile

        protected void compile​(InputChanges inputChanges)
      • getPreviousCompilationData

        @OutputFile
        protected java.io.File getPreviousCompilationData()
        The previous compilation analysis. Internal use only.
        Since:
        7.1
      • getGroovyCompilerJvmVersion

        @Input
        protected java.lang.String getGroovyCompilerJvmVersion()
        We need to track the Java version of the JVM the Groovy compiler is running on, since the Groovy compiler produces different results depending on it. This should be replaced by a property on the Groovy toolchain as soon as we model these.
        Since:
        4.0
      • getSource

        @Internal("tracked via stableSources")
        public FileTree getSource()
        Returns the source for this task, after the include and exclude patterns have been applied. Ignores source files which do not exist.

        The PathSensitivity for the sources is configured to be PathSensitivity.ABSOLUTE. If your sources are less strict, please change it accordingly by overriding this method in your subclass.

        Overrides:
        getSource in class SourceTask
        Returns:
        The source.
      • getGroovyOptions

        public GroovyCompileOptions getGroovyOptions()
        Gets the options for the Groovy compilation. To set specific options for the nested Java compilation, use getOptions().
        Returns:
        The Groovy compile options. Never returns null.
      • getOptions

        public CompileOptions getOptions()
        Returns the options for Java compilation.
        Specified by:
        getOptions in interface org.gradle.api.internal.tasks.compile.HasCompileOptions
        Returns:
        The Java compile options. Never returns null.
      • getGroovyClasspath

        @Classpath
        public FileCollection getGroovyClasspath()
        Returns the classpath containing the version of Groovy to use for compilation.
        Returns:
        The classpath.
      • setGroovyClasspath

        public void setGroovyClasspath​(FileCollection groovyClasspath)
        Sets the classpath containing the version of Groovy to use for compilation.
        Parameters:
        groovyClasspath - The classpath. Must not be null.
      • getJavaLauncher

        public Property<JavaLauncher> getJavaLauncher()
        The toolchain JavaLauncher to use for executing the Groovy compiler.
        Returns:
        the java launcher property
        Since:
        6.8
      • getIncrementalCompilerFactory

        @Inject
        protected abstract org.gradle.api.internal.tasks.compile.incremental.IncrementalCompilerFactory getIncrementalCompilerFactory()
      • getDeleter

        @Inject
        protected abstract org.gradle.internal.file.Deleter getDeleter()
      • getProjectLayout

        @Inject
        protected abstract ProjectLayout getProjectLayout()
      • getObjectFactory

        @Inject
        protected abstract ObjectFactory getObjectFactory()
      • getGroovyCompilerFactory

        @Inject
        protected abstract org.gradle.api.internal.tasks.compile.GroovyCompilerFactory getGroovyCompilerFactory()
      • getFeatureFlags

        @Inject
        protected abstract org.gradle.internal.buildoption.FeatureFlags getFeatureFlags()
      • getJavaToolchainService

        @Inject
        protected abstract JavaToolchainService getJavaToolchainService()