Package org.apache.tools.ant.taskdefs

# Class Exit

java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.apache.tools.ant.taskdefs.Exit

All Implemented Interfaces:
  `Cloneable`

public class Exit extends Task
Exits the active build, giving an additional message if available. The `if` and `unless` attributes make the failure conditional -both probe for the named property being defined. The `if` tests for the property being defined, the `unless` for a property being undefined. If both attributes are set, then the test fails only if both tests are true. i.e.

    fail := defined(ifProperty) && !defined(unlessProperty)

A single nested`<condition>` element can be specified instead of using `if`/`unless` (a combined effect can be achieved using `isset` conditions).

Since:
  Ant 1.2

- ## Field Summary

  ### 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
  `Exit()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addText​(String msg)`
  Set a multiline message.
  `ConditionBase`
  `createCondition()`
  Add a condition element.
  `void`
  `execute()`
  Throw a `BuildException` to exit (fail) the build.
  `void`
  `setIf​(Object c)`
  Only fail if the given expression evaluates to true or the name of an existing property.
  `void`
  `setIf​(String c)`
  Only fail if the given expression evaluates to true or the name of an existing property.
  `void`
  `setMessage​(String value)`
  A message giving further information on why the build exited.
  `void`
  `setStatus​(int i)`
  Set the status code to associate with the thrown Exception.
  `void`
  `setUnless​(Object c)`
  Only fail if the given expression evaluates to false or tno property of the given name exists.
  `void`
  `setUnless​(String c)`
  Only fail if the given expression evaluates to false or tno property of the given name exists.

  ### 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

  - ### Exit

    public Exit()

- ## Method Details

  - ### setMessage

    public void setMessage​(String value)
    A message giving further information on why the build exited.
    Parameters:
      `value` - message to output

  - ### setIf

    public void setIf​(Object c)
    Only fail if the given expression evaluates to true or the name of an existing property.
    Parameters:
      `c` - property name or evaluated expression
    Since:
      Ant 1.8.0

  - ### setIf

    public void setIf​(String c)
    Only fail if the given expression evaluates to true or the name of an existing property.
    Parameters:
      `c` - property name or evaluated expression

  - ### setUnless

    public void setUnless​(Object c)
    Only fail if the given expression evaluates to false or tno property of the given name exists.
    Parameters:
      `c` - property name or evaluated expression
    Since:
      Ant 1.8.0

  - ### setUnless

    public void setUnless​(String c)
    Only fail if the given expression evaluates to false or tno property of the given name exists.
    Parameters:
      `c` - property name or evaluated expression

  - ### setStatus

    public void setStatus​(int i)
    Set the status code to associate with the thrown Exception.
    Parameters:
      `i` - the `int` status

  - ### execute

    public void execute() throws BuildException
    Throw a `BuildException` to exit (fail) the build. If specified, evaluate conditions: A single nested condition is accepted, but requires that the `if`/`unless` attributes be omitted. If the nested condition evaluates to true, or the ifCondition is true or unlessCondition is false, the build will exit. The error message is constructed from the text fields, from the nested condition (if specified), or finally from the if and unless parameters (if present).
    Overrides:
      `execute` in class `Task`
    Throws:
      `BuildException` - on error

  - ### addText

    public void addText​(String msg)
    Set a multiline message.
    Parameters:
      `msg` - the message to display

  - ### createCondition

    public ConditionBase createCondition()
    Add a condition element.
    Returns:
      `ConditionBase`.
    Since:
      Ant 1.6.2