Apache Ant is a build tool used primarily for building and deploying Java projects. It uses an XML file called build.xml for configuration. Builds in Ant are composed of tasks, targets, and extension points. Tasks are atomic units of work, like compiling source code. Targets can specify dependencies between tasks. The default target will run if none is specified. Ant allows classpath containers to be created and used in tasks. It also defines a JUnit task to run JUnit tests.