## org.apache.tools.ant.taskdefs
Class Ant

    java.lang.Object
      |
      +--org.apache.tools.ant.ProjectComponent
            |
            +--org.apache.tools.ant.Task
                  |
                  +--org.apache.tools.ant.taskdefs.Ant

public class Ant
extends Task

Build a sub-project.

      <target name="foo" depends="init">
        <ant antfile="build.xml" target="bar" >
          <property name="property1" value="aaaaa" />
          <property name="foo" value="baz" />
        </ant>
      </target>

      <target name="bar" depends="init">
        <echo message="prop is ${property1} ${foo}" />
      </target>

Since:
  Ant 1.1

Nested Class Summary
`static class` `Ant.Reference` Helper class that implements the nested <reference> element of <ant> and <antcall>.
`static class` `Ant.TargetElement` Helper class that implements the nested <target> element of <ant> and <antcall>.

Field Summary

Fields inherited from class org.apache.tools.ant.Task
`description, location, target, taskName, taskType, wrapper`

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

Constructor Summary
`Ant()`

Method Summary
`void` `addConfiguredTarget(Ant.TargetElement t)` Add a target to this Ant invocation.
`void` `addPropertyset(PropertySet ps)` Add a set of properties to pass to the new project.
`void` `addReference(Ant.Reference r)` Add a Reference element identifying a data type to carry over to the new project.
`Property` `createProperty()` Property to pass to the new project.
`void` `execute()` Do the execution.
`void` `handleErrorFlush(java.lang.String output)` Handles an error line by logging it with the WARN priority.
`void` `handleErrorOutput(java.lang.String output)` Handles an error output by logging it with the WARN priority.
`void` `handleFlush(java.lang.String output)` Handles output by logging it with the INFO priority.
`int` `handleInput(byte[] buffer, int offset, int length)` Handle an input request by this task
`void` `handleOutput(java.lang.String output)` Handles output by logging it with the INFO priority.
`void` `init()` Creates a Project instance for the project to call.
`void` `setAntfile(java.lang.String s)` The build file to use.
`void` `setDir(java.io.File d)` The directory to use as a base directory for the new Ant project.
`void` `setInheritAll(boolean value)` If true, pass all properties to the new Ant project.
`void` `setInheritRefs(boolean value)` If true, pass all references to the new Ant project.
`void` `setOutput(java.lang.String s)` Set the filename to write the output to.
`void` `setTarget(java.lang.String s)` The target of the new Ant project to execute.

Methods inherited from class org.apache.tools.ant.Task
`getDescription, getLocation, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, isInvalid, log, log, maybeConfigure, perform, reconfigure, setDescription, setLocation, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType`

Methods inherited from class org.apache.tools.ant.ProjectComponent
`getProject, setProject`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Ant

    public Ant()

Method Detail

### setInheritAll

    public void setInheritAll(boolean value)

  If true, pass all properties to the new Ant project. Defaults to true.

  Parameters:
    `value` - if true pass all properties to the new Ant project.

### setInheritRefs

    public void setInheritRefs(boolean value)

  If true, pass all references to the new Ant project. Defaults to false.

  Parameters:
    `value` - if true, pass all references to the new Ant project

### init

    public void init()

  Creates a Project instance for the project to call.

  Overrides:
    `init` in class `Task`

### handleOutput

    public void handleOutput(java.lang.String output)

  Description copied from class: `Task`
  Handles output by logging it with the INFO priority.

  Overrides:
    `handleOutput` in class `Task`
  Parameters:
    `output` - The output to log. Should not be `null`.
  Since:
    Ant 1.5
  See Also:
    `Task.handleOutput(String)`

### handleInput

    public int handleInput(byte[] buffer,
                           int offset,
                           int length)
                    throws java.io.IOException

  Description copied from class: `Task`
  Handle an input request by this task

  Overrides:
    `handleInput` in class `Task`
  Parameters:
    `buffer` - the buffer into which data is to be read.
    `offset` - the offset into the buffer at which data is stored.
    `length` - the amount of data to read
  Returns:
    the number of bytes read
  Throws:
    `java.io.IOException` - if the data cannot be read
  Since:
    Ant 1.6
  See Also:
    `Task.handleInput(byte[], int, int)`

### handleFlush

    public void handleFlush(java.lang.String output)

  Description copied from class: `Task`
  Handles output by logging it with the INFO priority.

  Overrides:
    `handleFlush` in class `Task`
  Parameters:
    `output` - The output to log. Should not be `null`.
  Since:
    Ant 1.5.2
  See Also:
    `Task.handleFlush(String)`

### handleErrorOutput

    public void handleErrorOutput(java.lang.String output)

  Description copied from class: `Task`
  Handles an error output by logging it with the WARN priority.

  Overrides:
    `handleErrorOutput` in class `Task`
  Parameters:
    `output` - The error output to log. Should not be `null`.
  Since:
    Ant 1.5
  See Also:
    `Task.handleErrorOutput(String)`

### handleErrorFlush

    public void handleErrorFlush(java.lang.String output)

  Description copied from class: `Task`
  Handles an error line by logging it with the WARN priority.

  Overrides:
    `handleErrorFlush` in class `Task`
  Parameters:
    `output` - The error output to log. Should not be `null`.
  Since:
    Ant 1.5.2
  See Also:
    `Task.handleErrorFlush(String)`

### execute

    public void execute()
                 throws BuildException

  Do the execution.

  Overrides:
    `execute` in class `Task`
  Throws:
    `BuildException` - if a target tries to call itself; probably also if a BuildException is thrown by the new project.

### setDir

    public void setDir(java.io.File d)

  The directory to use as a base directory for the new Ant project. Defaults to the current project's basedir, unless inheritall has been set to false, in which case it doesn't have a default value. This will override the basedir setting of the called project.

  Parameters:
    `d` - new directory as `File`.

### setAntfile

    public void setAntfile(java.lang.String s)

  The build file to use. Defaults to "build.xml". This file is expected to be a filename relative to the dir attribute given.

  Parameters:
    `s` - the `String` build file name.

### setTarget

    public void setTarget(java.lang.String s)

  The target of the new Ant project to execute. Defaults to the new project's default target.

  Parameters:
    `s` - the name of the target to invoke.

### setOutput

    public void setOutput(java.lang.String s)

  Set the filename to write the output to. This is relative to the value of the dir attribute if it has been set or to the base directory of the current project otherwise.

  Parameters:
    `s` - the name of the file to which the output should go.

### createProperty

    public Property createProperty()

  Property to pass to the new project. The property is passed as a 'user property'.

  Returns:
    the created `Property` object.

### addReference

    public void addReference(Ant.Reference r)

  Add a Reference element identifying a data type to carry over to the new project.

  Parameters:
    `r` - `Reference` to add.

### addConfiguredTarget

    public void addConfiguredTarget(Ant.TargetElement t)

  Add a target to this Ant invocation.

  Parameters:
    `t` - the `TargetElement` to add.
  Since:
    Ant 1.6.3

### addPropertyset

    public void addPropertyset(PropertySet ps)

  Add a set of properties to pass to the new project.

  Parameters:
    `ps` - `PropertySet` to add.
  Since:
    Ant 1.6

Copyright © 2000-2005 Apache Software Foundation. All Rights Reserved.