ANT十五大最佳实践 作者: Eric M. Burke, coauthor of Java Extreme Programming Cookbook 原文:http://www.onjava.com/pub/a/onjava/2003/12/17/ant_bestpractices.html 译者:stonexu QQ:19722707 MSN:xt121@hotmail.com
在ANT出现之前,编译和部署Java应用需要使用包括特定平台的脚本、Make文件、不同的IDE以及手工操作等组成的大杂烩。现在,几乎所有的开源Java项目都在使用Ant,许多公司的开发项目也在使用Ant。Ant的大量使用,也自然带来了对总结Ant最佳实践的迫切需求。 本文总结了我喜好的Ant最佳实践,很多是从亲身经历的项目错误,或从其他开发者的“恐怖”故事中得到的灵感的。比如,有人告诉我有个项目将XDoclet 生成的代码放入锁定文件的版本控制工具中。单开发者修改源代码时,他必须记住手工检出(Check out)并锁定所有将要重生成的文件。然后,手工运行代码生成器,当他能够让Ant编译代码时,这一方法还存在一些问题: l 生成的代码无法存储在版本控制系统中 l Ant(本案例中是Xdoclet)应该自动确定下一次构建涉及的源文件,而不应由程序员人工确定。 l Ant的构建文件应该定义好正确的任务依赖关系,这样程序员不必按照特定顺序调用任务。 字串8 当我开始一个新项目时,我首先编写Ant构建文件。文件定义构建的过程,并为团队中的每个程序员都使用。本文所有的最佳实践假设Ant构建文件是一个必须精心编写的重要文件,它应在版本控制系统中得到维护,并定期进行重构。下面是我的十五大Ant最佳实践。
15. Avoid Platform-Specific Ant Wrappers 不管什么原因,有人喜欢用简单的、名称叫做compile之类的批文件或脚本装载他们的产品。当你去看脚本的内容,你会发现以下内容: ant compile 其实开发人员熟悉Ant,并且完全能够自己键入ant compile。请不要仅仅为了调用Ant而使用特定平台的脚本。这只会使其他人在首次使用你的脚本时,增加学习和理解的烦扰。除此之外,你不可能提供适用于每个操作系统的脚本,这是真正烦扰其他用户的地方。