- 论坛徽章:
- 0
|
这是>上一个示例build.xml(第二章)
定义拉一个默认的工程名,默认的target是prepare
文件的初始路径就是"."
那么就意味着执行ant 默认就执行prepare这个target
而basedir用来计算所有其他路径的基路径,"."应该就是表示与build.xml在
同一路径
属性有点象C语言的宏,这其实应该是最容易的理解方式
但是跟确定的来讲,应该说象java中的那些内置属性
就是用System.getProperty()来获取的那些东东
ant 确实也有自己的系统属性
那么在这里我们就理解为final定义
它门的引用方法就是${XXX}
因为ant很大数量的操作就是对路径的处理
所以干脆定义拉一个path元素
这个path元素其实也不会是一个实际的动作
它仍然是一个名词,其实还是一个宏
我门看看当前的这个path定义
path 这个元素中又包含了pathelement ,fileset这个两个元素
那么 project.class.path,它涵盖拉pathelement
与fileset所对应的值,即当我们引用project.class.path
它实际上包括了 "${class.root}"和"${lib.dir}"下的所有jar
值得注意的是它门的定义方式
path 用id来命名
pathelement 用location
fileset 用dir,include name
对prepare这个target的描述
首先删除${class.root},然后重建${class.root}
copy这个元素还是比较有趣的,把目的地写在最前
然后把源文件地址放在后面
值得注意的是"**",这是递归获取的意思
那么就是在${source.root}下递归获取*.properties
*.hbm.xml,*.hbm.xml,*.gif这些文件并按照文件目录
顺序copy至${class.root}
"complie"这个target依赖"prepare"这个target
compile当然就是执行javac,自然要定义好源文件和目标文件
debug,optimize,deprecation我也不知其中的含义
应该去研究javac本身把
b不过可以看一下
refid就是对前面定义的path元素的引用方式
"run"这个target依赖"compile"这个target
run自然要用java,又用到refid哦
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/37861/showart_353602.html |
|