转贴,原贴:
http://www.java-cn.com/technology/technology_detail.jsp?id=1842
下面是一个 ANT 工程文件的示例 build.xml,供大家参考。更多的使用方法请参阅 ANT 自带的文档。
<?xml version="1.0"?>
<!--
==========================================================================
xiaoyoung BBS build file
Legal: Copyright (c) 2000,2001,2002 Young
==============================================================================
-->
<project default="dist" basedir=".">
<property name="name" value="bbs"/>
<property name="version" value="1"/>
<property name="year" value="2002"/>
<property name="language" value="en"/>
<!--
Give user a chance to override without editing this file
(and without typing -D each time he compiles it)
-->
<property file=".ant.properties"/>
<property file="${user.home}/.ant.properties"/>
<!--
There should be no need to override default compiler but need to change
javac task to run without this
-->
<!--
these are here only for those who use jikes compiler. For other
developers this part makes no difference.
-->
<property name="build.compiler.emacs" value="on"/>
<property name="build.compiler.pedantic" value="true"/>
<property name="build.compiler.depend" value="true"/>
<property name="build.compiler.fulldepend" value="true"/>
Mkdir是建立目录,delete是删除目录,javac是编译命令,javac中子项有debug=”off”是关闭断点调试.srcdir是原文件所在目录,destdir是编译后目标文件所在目录.jar是打包命令,basedir是要打包文件所在目录,jarfile是编译后是没有经过混淆器后生成的jar文件.manifest.mf是菜单文件,包含所执行的所要类.fileset求的是所要的资源文件所在目录.java是执行混淆器,有三个命令参数,原目标jar文件,混淆后的jar文件,不混淆的清单列表.混淆器用的是Open Source的RetroGuard.在http://www.retrologic.com/下载.在CLASSPATH中设置retroguard.jar文件路径.depends属性是target之间相互依赖的关系.只要执行 default属性是ant默认执行的参数. Ant 和 ant all是一样的.