Ant源码分析(一) -- 开始

来源:互联网 发布:php技术博客 编辑:程序博客网 时间:2024/06/03 04:30

    Ant是比较老牌的构建工具了,从2004年起就一直在使用,使用上倒是很熟悉了,最近闲来无事,兴起了阅读Ant源码的念头。按照习惯的做法,总是从最简单的版本开始,然后再选择有代表性的高版本阅读源码,这样就能准确的把握一个开源软件的核心思想和演进路线了。

    Ant是Apache下的一个开源项目,其目标就是通过各种target进行便捷的代码构建、测试、发布等工作,将原本需要开发人员一步一步操作的步骤按照依赖关系(同Make的理念一致),一次性完成,减轻了开发人员的工作量,同时也减少了在多个步骤间操作出现错误的概率。同时,Ant是基于task的,而这个task又是可以扩展的,即Ant提供了相关接口,只要实现这个接口,就能按照开发人员的意愿,来扩展和完善Ant的功能。

    Ant的各个版本源码可以在这里下载:http://archive.apache.org/dist/ant/source/

    首先,从Ant-1.1开始Ant源码的阅读之旅。我阅读源码的习惯是在阅读的同时要构建一个实际的构建运行环境,方便从实际的运行过程中体会代码的动态运作过程。

    下载jakarta-ant-1.1.zip后将其解压到一个目录,假定是D:/jakarta-ant-1.1,其目录结构如下图:

 

    其中bin目录是可执行的ant.bat等命令文件,docs是相关文档,lib是已经打包好的ant和使用到的jar包,src就是ant-1.1的源码了。我们可以在D:/jakarta-ant-1.1用命令行程序运行build.bat,这样就会在与D:/jakarta-ant-1.1平级的目录下生成一个build(这里是D:/build)目录

这个目录里就包含了我们自己构建好的ant-1.1(D:/build/ant)。为了使用这个ant来进行应用程序的构建,需要做如下工作:

    一、设置ANT_HOME,桌面->我的电脑->属性->高级->环境变量->新建系统变量

          变量名:ANT_HOME, 变量值:D:/dev/java/build/ant  也就是我们自行构建的ant的目录啦,然后确定即可

    二、编写一个简单的Java类和build文件,用于运行ant的构建功能。将Java类文件Test.java、build.xml放入目录D:/dev/java/build/ant。二个文件的内容如下:

Test.java

build.xml

如此准备工作就完成了,在 D:/dev/java/build/ant 目录下执行ant,即可编译Test.java了。

相关文件点击这里下载。

                                                                       ---------- To Be Continue ----------