1、Ant不像Maven那样遵循相同的约定配置模型。因此,您需要显式地指定构建的每个步骤。没有默认的目录结构。虽然这看起来可能需要更多的工作,而且常常是这样,但是对于构建如何运行以及要成功构建应用程序究竟需要什么,您拥有最终的灵活性。
2、Ant主要有两个概念,目标和任务。目标与Maven的目标非常相似:它是构建执行的高级操作,例如编译代码、运行测试或将应用程序打包到JAR中。
3、任务是包含目标的实际操作。例如,有一个javac任务来编译代码,一个java任务来运行应用程序,甚至还有一个zip任务来将选择的文件打包到一个zip文件中。你甚至可以创建自己的任务。
4、当您从命令行运行Ant构建时,该工具会自咿蛙匆盗动查找build.xml文件。如果您愿意,您确实有机会指定一个不同的名称。下图显示了build.xml文件示例,该文件编译项目,然后将文件打包到JAR中。
5、此构建有三个目标,它们对应于此应用程序所需的高级任务。只需在命令行上键入ant,就可以运行此构建。这将尝试为构建JAR的默认目标(目标包- JAR)运行构建。
6、注意,每个任务都可以指定一个依赖项。如果指定了一个或多个依赖项,Ant将在继续之前执行这些目标。如果目标失败,例如编译错误或单元测试失败,构建将停止。
7、一个目标可以构成许多不同的任务。compile任务包含javac任务的两个执行—一个用于生产代码,另一个用于测试代码。每个编译都有一个单独的输出,因为包jar目标只需要生产类。
8、运行Ant构建时,可以显式地指定要运行的目标。当此目标及其依赖的任何目标完成时,构建将停止。在创建输出目录并编译源文件之后,运行ant编译将停止。