● 每个buildfile包含一个project和N个target(N≥1)。
● 每个target包含多个task元素。
● 每个task元素有一个唯一的ID。<taskname id="taskID" ... />
● 从Ant 1.6开始,所有的task都可以在target外面进行声明。也就是说,在任何target还没有执行前,这些task就已经计算过了。所以,如果脚本写得不仔细的话,有可能出现无限循环。比如使用了antcall。
● 给target加上description,那么用projecthelp时,就会把该target作为public target而列给用户看。
● filtering copy
● target运行条件if/unless如果要检查多项,那么可以把这些东西统一到一个独立的target里: