## Developing Ant tasks and types within Eclipse

The following guidelines should be followed when developing and debugging Ant tasks and types within Eclipse. These requirements stem from the fact that Ant tasks and types must be loaded by the Ant classloader, rather than a plug-in classloader, when Ant is run in the same VM as Eclipse. To avoid having the Ant tasks and types loaded by a plug-in classloader, the tasks and types need to be stored in a location that is not visible to any plug-in classloader. Also see Contributing tasks and types.

- Contributed Ant tasks or types should be defined in their own source folder within a plug-in (i.e. separate from the source folders containing regular plug-in classes)
- Each source folder containing the Ant tasks and types should have its own output location that does not overlap with the output location of the regular plug-in classes.
- When testing/debugging the new Ant tasks or types, the project contributing the Ant tasks or types must be configured to exclude the output folders containing the Ant tasks and types. Use the Properties dialog for the project to correctly configure the Self-Hosting configuration by removing the Ant output directories from the plug-ins classpath.