ant的一些偏门技巧
一,为减小 build.xml 文件的大小,使用XML实体
把属性的设置都放一个 XML 文件中
props.xml 文件
< property name ="build.dir" value ="build" />
然后在 build.xml 文件中加入如下
<! DOCTYPE project [ <!ENTITY properties SYSTEM "file:props.xml"> ]>
二,将多个目录的源文件编译到一个地方
< javac destdir ="build/classes">
< src path ="src1"/>
< src path ="src2"/>
</ javac >
三,保存构建时的信息
< project default ="init">
< target name ="init"></ target >
< property environment ="env" />
< property name ="env.COMPUTERNAME" value ="${env.HOSTNAME}" />
< propertyfile comment ="Build Information" file ="./buildinfo.properties">
< entry key ="build.host" value ="${env.COMPUTERNAME}" />
< entry key ="build.user.name" value ="${user.name}" />
< entry key ="build.os.name" value ="${os.name}" />
</ propertyfile >
</ project >
四,去除属性文件的注释
属性文件:
# 这里是注释,会给过滤掉
build.dir =build
build 文件:
< copy file ="props.properties" todir ="sample">
< filterchain >
< striplinecomments >
< comment value ="#" />
</ striplinecomments >
</ filterchain >
</ copy >
五,两个花俏的功能
1. 声音提示
< project name ="Sound" default ="all">
< property file ="build.properties" />
< target name ="init">
< sound >
< success source ="${sound.dir}/success.wav" duration ="500" />
< fail source ="${sound.dir}/fail.wav" loops ="2" />
</ sound >
</ target >
< target name ="fail" depends ="init">
< fail />
</ target >
< target name ="success" depends ="init" />
< target name ="all" depends ="success" />
</ project >
2. 进度条提示
< project name ="splash" default ="init">
< target name ="init">
< splash imageurl ="http://java.chinaitlab.com/UploadFiles_8734/200610/20061021103415601.gif" showduration ="5000" />
< sleep seconds ="1" />
< sleep seconds ="1" />
< sleep seconds ="1" />
< sleep seconds ="1" />
< sleep seconds ="1" />
< sleep seconds ="1" />
</ target >
</ project >