一,为减小 build.xml 文件的大小,使用XML实体

把属性的设置都放一个XML文件中

props.xml文件

<propertyname="build.dir"value="build"/>

然后在 build.xml文件中加入如下

<!DOCTYPE project [<!ENTITY properties SYSTEM "file:props.xml">]>

二,将多个目录的源文件编译到一个地方

<javacdestdir="build/classes">

    <srcpath="src1"/>

    <srcpath="src2"/>

</javac>

三,保存构建时的信息

<projectdefault="init">

    <targetname="init"></target>

    <propertyenvironment="env"/>

    <propertyname="env.COMPUTERNAME"value="${env.HOSTNAME}"/>

    <propertyfilecomment="Build Information"file="./buildinfo.properties">

        <entrykey="build.host"value="${env.COMPUTERNAME}"/>

        <entrykey="build.user.name"value="${user.name}"/>

        <entrykey="build.os.name"value="${os.name}"/>

    </propertyfile>

</project>

四,去除属性文件的注释

属性文件:

# 这里是注释,会给过滤掉

build.dir = build

build文件:

<copyfile="props.properties"todir="sample">

    <filterchain>

        <striplinecomments>

            <commentvalue="#"/>

        </striplinecomments>

    </filterchain>

</copy>

五,两个花俏的功能

1.声音提示

<projectname="Sound"default="all">

    <propertyfile="build.properties"/>

    <targetname="init">

        <sound>

            <successsource="${sound.dir}/success.wav"duration="500"/>

            <failsource="${sound.dir}/fail.wav"loops="2"/>

        </sound>

    </target>

    <targetname="fail"depends="init">

        <fail/>

    </target>

    <targetname="success"depends="init"/>

    <targetname="all"depends="success"/>

</project>

2.进度条提示

<projectname="splash"default="init">

    <targetname="init">

        <splashimageurl="http://java.chinaitlab.com/UploadFiles_8734/200610/20061021103415601.gif"showduration="5000"/>

        <sleepseconds="1"/>

        <sleepseconds="1"/>

        <sleepseconds="1"/>

        <sleepseconds="1"/>

        <sleepseconds="1"/>

        <sleepseconds="1"/>

    </target>

</project>