# API Tools File Generation Ant Task

## Purpose

This task runs to generate all files required by Api Tooling inside a binary bundle. This task is run during the Eclipse builds or during the bundle export for all projects that have an Api Tooling nature.

Right now, only the file called `.api_description` is created.

## Usage

### Description

The name of the ant task is: `apitooling.apigeneration`. To be used, the jar file `apitooling-ant.jar` has to be on the ant classpath.

    <apitooling.apigeneration
    	projectname="..."
    	project="..."
    	binary="..."
    	target="..."
    	debug="..."
    />

### Parameters

Attribute | Description | Required
projectname | Set the project name | Yes
project | Set the project location. This is the folder that contains all the source files for the given project. The location is set using an absolute path. | Yes
binary | Set the binary locations. This is a list of folders or jar files that contain all the .class files for the given project. They are separated by the platform path separator. Each entry must exist. They should be specified using absolute paths. | Yes
target | Set the target location. This is the folder in which the generated files are generated. The location is set using an absolute path. | Yes
debug | Set the debug value. The possible values are: `true`, `false` Default is `false`. | No
extraManifests | Set the extra manifest files' locations. This is a list of extra MANIFEST.MF files' locations that can be set to provide more api packages to scan. They are separated by the platform path separator. Each entry must exist. They should be specified using absolute paths. | No
extraSourceLocations | Set the extra source locations. This is a list of locations for source files that will be scanned. They are separated by the platform path separator. Each entry must exist. They should be specified using absolute paths. | No

### Examples

    	<apitooling.apigeneration
    		projectname="org.eclipse.jdt.core_3.5.0.v_927"
    		project="d:\eclipse\org.eclipse.jdt.core"
    		binary="d:\eclipse\org.eclipse.jdt.core\bin;d:\eclipse\org.eclipse.jdt.core\antbin"
    		target="d:\plugins\org.eclipse.jdt.core"
    		debug="true"
    	/>

This will create a file called `.api_description` inside the folder `d:\plugins\org.eclipse.jdt.core` based on the source contained in `d:\eclipse\org.eclipse.jdt.core` and the .class files contained in `d:\eclipse\org.eclipse.jdt.core\bin`.

API Tools Analysis Ant Task
API Tools API Freeze Ant Task
API Tools API Use Ant Task
API Tools Pluggable API Use Ant Task
API Tools Analysis Report Conversion Ant Task
API Tools API Freeze Report Conversion Ant Task
API Tools API Use Report Conversion Ant Task