Class ShellScriptTask

java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.ExecTask
net.sf.antcontrib.platform.ShellScriptTask
All Implemented Interfaces:
Cloneable

public class ShellScriptTask extends org.apache.tools.ant.taskdefs.ExecTask
A generic front-end for passing "shell lines" to any application which can accept a filename containing script input (bash, perl, csh, tcsh, etc.). see antcontrib doc for useage
Author:
stephan beal, peter reilly
  • Field Summary

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

    cmdl, failOnError, newEnvironment, 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
    void
    Adds s to the lines of script code.
    void
    execute the task
    void
    setCommand(org.apache.tools.ant.types.Commandline notUsed)
    Disallow the command attribute of parent class ExecTask.
    void
    Sets the shell used to run the script.
    void
    Sets script code to s.
    void
    Sets the shell used to run the script.
    void
    setTmpSuffix(String tmpSuffix)
    Sets the suffix for the tmp file used to contain the script.
    protected void
    Writes the script lines to a temp file.

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

    addConfiguredRedirector, addEnv, checkConfiguration, createArg, createHandler, createWatchdog, getOs, getOsFamily, getResolveExecutable, isValidOs, logFlush, maybeSetResultPropertyValue, prepareExec, resolveExecutable, runExec, runExecute, setAppend, setDir, setDiscardError, setDiscardOutput, setError, setErrorProperty, setFailIfExecutionFails, setFailonerror, setInput, setLogError, setNewenvironment, setOs, setOsFamily, setOutput, setOutputproperty, setResolveExecutable, setResultProperty, setSearchPath, setSpawn, setTimeout, setTimeout, setupRedirector, setVMLauncher

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

    bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, 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

    • ShellScriptTask

      public ShellScriptTask()
  • Method Details

    • addText

      public void addText(String s)
      Adds s to the lines of script code.
    • setInputString

      public void setInputString(String s)
      Sets script code to s.
      Overrides:
      setInputString in class org.apache.tools.ant.taskdefs.ExecTask
    • setShell

      public void setShell(String shell)
      Sets the shell used to run the script.
      Parameters:
      shell - the shell to use (bash is default)
    • setExecutable

      public void setExecutable(String shell)
      Sets the shell used to run the script.
      Overrides:
      setExecutable in class org.apache.tools.ant.taskdefs.ExecTask
      Parameters:
      shell - the shell to use (bash is default)
    • setCommand

      public void setCommand(org.apache.tools.ant.types.Commandline notUsed)
      Disallow the command attribute of parent class ExecTask. ant.attribute ignore="true"
      Overrides:
      setCommand in class org.apache.tools.ant.taskdefs.ExecTask
      Parameters:
      notUsed - not used
      Throws:
      org.apache.tools.ant.BuildException - if called
    • setTmpSuffix

      public void setTmpSuffix(String tmpSuffix)
      Sets the suffix for the tmp file used to contain the script. This is useful for cmd.exe as one can use cmd /c call x.bat
      Parameters:
      tmpSuffix - the suffix to use
    • execute

      public void execute() throws org.apache.tools.ant.BuildException
      execute the task
      Overrides:
      execute in class org.apache.tools.ant.taskdefs.ExecTask
      Throws:
      org.apache.tools.ant.BuildException
    • writeScript

      protected void writeScript() throws org.apache.tools.ant.BuildException
      Writes the script lines to a temp file.
      Throws:
      org.apache.tools.ant.BuildException