Class Groovy

java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.Java
org.codehaus.groovy.ant.Groovy
All Implemented Interfaces:
Cloneable

public class Groovy extends org.apache.tools.ant.taskdefs.Java
Executes a series of Groovy statements.

Statements can either be read in from a text file using the src attribute or from between the enclosing groovy tags.

  • Field Summary

    Fields inherited from class org.apache.tools.ant.taskdefs.Java

    redirector, redirectorElement

    Fields inherited from class org.apache.tools.ant.Task

    target, taskName, taskType, wrapper

    Fields inherited from class org.apache.tools.ant.ProjectComponent

    description, location, project
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    Adds the class paths (if any)
    void
    addConfigured(org.apache.tools.ant.types.ResourceCollection a)
    Set the source resource.
    void
    addFileset(org.apache.tools.ant.types.FileSet set)
    Adds a fileset (nested fileset attribute) which should represent a single source file.
    final void
    addFilterChain(org.apache.tools.ant.types.FilterChain filter)
    Add the FilterChain element.
    void
    Set an inline command to execute.
    org.apache.tools.ant.types.Commandline.Argument
     
    org.apache.tools.ant.types.Path
    Returns a new path element that can be configured.
    protected void
    Exec the statement.
    void
    Load the file and then execute it
    org.apache.tools.ant.types.Path
    Gets the classpath.
    boolean
    Returns true if parameter metadata generation has been enabled.
    static void
    main(String[] args)
     
    protected void
    print any results in the statement.
    protected void
    Read in lines and execute them.
    void
    setAppend(boolean append)
    Whether output should be appended to or overwrite an existing file.
    void
    setClasspath(org.apache.tools.ant.types.Path classpath)
    Sets the classpath for loading.
    void
    setClasspathRef(org.apache.tools.ant.types.Reference ref)
    Set the classpath for loading using the classpath reference.
    void
    setConfigscript(String configscript)
    Sets the configuration script for the groovy compiler configuration.
    void
    setContextClassLoader(boolean contextClassLoader)
    Setting to true will cause the contextClassLoader to be set with the classLoader of the shell used to run the script.
    void
    setEncoding(String encoding)
    Declare the encoding to use when inputting from a resource; If not supplied or the empty encoding is supplied, a guess will be made for file resources, otherwise the platform's default encoding will be used.
    void
    setFork(boolean fork)
    Should the script be executed using a forked process.
    void
    setIncludeAntRuntime(boolean includeAntRuntime)
    Should the system classpath be included on the classpath when forking.
    void
    setIndy(boolean indy)
    Deprecated.
    void
    setOutput(File output)
    Set the output file; optional, defaults to the Ant log.
    void
    Declare the encoding to use when outputting to a file; Leave unspecified or use "" for the platform's default encoding.
    void
    setParameters(boolean parameters)
    If true, generates metadata for reflection on method parameter names (jdk8+ only).
    void
    setScriptBaseClass(String scriptBaseClass)
    Set the script base class name
    void
    setSrc(File srcFile)
    Set the name of the file to be run.
    void
    setStacktrace(boolean stacktrace)
    Enable compiler to report stack trace information if a problem occurs during compilation.
    void
    setUseGroovyShell(boolean useGroovyShell)
    Should a new GroovyShell be used when forking.

    Methods inherited from class org.apache.tools.ant.taskdefs.Java

    addAssertions, addConfiguredRedirector, addEnv, addSysproperty, addSyspropertyset, checkConfiguration, clearArgs, createBootclasspath, createJvmarg, createModulepath, createPermissions, createUpgrademodulepath, createWatchdog, executeJava, executeJava, getCommandLine, getSysProperties, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, maybeSetResultPropertyValue, run, setArgs, setClassname, setCloneVm, setDir, setDiscardError, setDiscardOutput, setError, setErrorProperty, setFailonerror, setInput, setInputString, setJar, setJvm, setJvmargs, setJVMVersion, setLogError, setMaxmemory, setModule, setModulepath, setModulepathRef, setNewenvironment, setOutputproperty, setResultProperty, setSourceFile, setSpawn, setTimeout, setupRedirector

    Methods inherited from class org.apache.tools.ant.Task

    bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType

    Methods inherited from class org.apache.tools.ant.ProjectComponent

    clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject

    Methods inherited from class java.lang.Object

    equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Groovy

      public Groovy()
  • Method Details

    • setFork

      public void setFork(boolean fork)
      Should the script be executed using a forked process. Defaults to false.
      Overrides:
      setFork in class org.apache.tools.ant.taskdefs.Java
      Parameters:
      fork - true if the script should be executed in a forked process
    • setOutputEncoding

      public void setOutputEncoding(String encoding)
      Declare the encoding to use when outputting to a file; Leave unspecified or use "" for the platform's default encoding.
      Parameters:
      encoding - the character encoding to use.
      Since:
      3.0.3
    • setEncoding

      public void setEncoding(String encoding)
      Declare the encoding to use when inputting from a resource; If not supplied or the empty encoding is supplied, a guess will be made for file resources, otherwise the platform's default encoding will be used.
      Parameters:
      encoding - the character encoding to use.
      Since:
      3.0.3
    • setUseGroovyShell

      public void setUseGroovyShell(boolean useGroovyShell)
      Should a new GroovyShell be used when forking. Special variables won't be available but you don't need Ant in the classpath.
      Parameters:
      useGroovyShell - true if GroovyShell should be used to run the script directly
    • setIncludeAntRuntime

      public void setIncludeAntRuntime(boolean includeAntRuntime)
      Should the system classpath be included on the classpath when forking. Defaults to true.
      Parameters:
      includeAntRuntime - true if the system classpath should be on the classpath
    • setStacktrace

      public void setStacktrace(boolean stacktrace)
      Enable compiler to report stack trace information if a problem occurs during compilation.
      Parameters:
      stacktrace - set to true to enable stacktrace reporting
    • setSrc

      public void setSrc(File srcFile)
      Set the name of the file to be run. The folder of the file is automatically added to the classpath. Required unless statements are enclosed in the build file or a nested resource is supplied.
      Parameters:
      srcFile - the file containing the groovy script to execute
    • addText

      public void addText(String txt)
      Set an inline command to execute. NB: Properties are not expanded in this text.
      Parameters:
      txt - the inline groovy commands to execute
    • addFileset

      public void addFileset(org.apache.tools.ant.types.FileSet set)
      Adds a fileset (nested fileset attribute) which should represent a single source file.
      Parameters:
      set - the fileset representing a source file
    • setOutput

      public void setOutput(File output)
      Set the output file; optional, defaults to the Ant log.
      Overrides:
      setOutput in class org.apache.tools.ant.taskdefs.Java
      Parameters:
      output - the output file
    • setAppend

      public void setAppend(boolean append)
      Whether output should be appended to or overwrite an existing file. Defaults to false.
      Overrides:
      setAppend in class org.apache.tools.ant.taskdefs.Java
      Parameters:
      append - set to true to append
    • setClasspath

      public void setClasspath(org.apache.tools.ant.types.Path classpath)
      Sets the classpath for loading.
      Overrides:
      setClasspath in class org.apache.tools.ant.taskdefs.Java
      Parameters:
      classpath - The classpath to set
    • createClasspath

      public org.apache.tools.ant.types.Path createClasspath()
      Returns a new path element that can be configured. Gets called for instance by Ant when it encounters a nested <classpath> element.
      Overrides:
      createClasspath in class org.apache.tools.ant.taskdefs.Java
      Returns:
      the resulting created path
    • setClasspathRef

      public void setClasspathRef(org.apache.tools.ant.types.Reference ref)
      Set the classpath for loading using the classpath reference.
      Overrides:
      setClasspathRef in class org.apache.tools.ant.taskdefs.Java
      Parameters:
      ref - the refid to use
    • getClasspath

      public org.apache.tools.ant.types.Path getClasspath()
      Gets the classpath.
      Returns:
      Returns a Path
    • setConfigscript

      public void setConfigscript(String configscript)
      Sets the configuration script for the groovy compiler configuration.
      Parameters:
      configscript - path to the configuration script
    • setIndy

      @Deprecated public void setIndy(boolean indy)
      Deprecated.
      Legacy method to set the indy flag (only true is allowed)
      Parameters:
      indy - true means invokedynamic support is active
    • setScriptBaseClass

      public void setScriptBaseClass(String scriptBaseClass)
      Set the script base class name
      Parameters:
      scriptBaseClass - the name of the base class for scripts
    • setParameters

      public void setParameters(boolean parameters)
      If true, generates metadata for reflection on method parameter names (jdk8+ only). Defaults to false.
      Parameters:
      parameters - set to true to generate metadata.
    • getParameters

      public boolean getParameters()
      Returns true if parameter metadata generation has been enabled.
    • execute

      public void execute() throws org.apache.tools.ant.BuildException
      Load the file and then execute it
      Overrides:
      execute in class org.apache.tools.ant.taskdefs.Java
      Throws:
      org.apache.tools.ant.BuildException
    • createArg

      public org.apache.tools.ant.types.Commandline.Argument createArg()
      Overrides:
      createArg in class org.apache.tools.ant.taskdefs.Java
    • addFilterChain

      public final void addFilterChain(org.apache.tools.ant.types.FilterChain filter)
      Add the FilterChain element.
      Parameters:
      filter - the filter to add
    • addConfigured

      public void addConfigured(org.apache.tools.ant.types.ResourceCollection a)
      Set the source resource.
      Parameters:
      a - the resource to load as a single element Resource collection.
    • runStatements

      protected void runStatements(Reader reader, PrintStream out) throws IOException
      Read in lines and execute them.
      Parameters:
      reader - the reader from which to get the groovy source to exec
      out - the outputstream to use
      Throws:
      IOException - if something goes wrong
    • execGroovy

      protected void execGroovy(String txt, PrintStream out)
      Exec the statement.
      Parameters:
      txt - the groovy source to exec
      out - not used?
    • main

      public static void main(String[] args)
    • addClassPathes

      protected void addClassPathes(GroovyClassLoader classLoader)
      Adds the class paths (if any)
      Parameters:
      classLoader - the classloader to configure
    • printResults

      protected void printResults(PrintStream out)
      print any results in the statement.
      Parameters:
      out - the output PrintStream to print to
    • setContextClassLoader

      public void setContextClassLoader(boolean contextClassLoader)
      Setting to true will cause the contextClassLoader to be set with the classLoader of the shell used to run the script. Not used if fork is true. Not allowed when running from Maven but in that case the context classLoader is set appropriately for Maven.
      Parameters:
      contextClassLoader - set to true to set the context classloader