ant 是一种打包脚本语言,能极大地方便程序的编译打包工作。但是在平常的开发过程中,经常会遇到一些打包流程,除了一小部分不一样,其他都是一样的。这种情况在编程语言中一般会通过抽取调用函数来减少重复代码,但是在 ant 中并没有函数这种功能。那应该如何来减少重复的代码呢?本文将通过宏定义 macrodef 和 antcall 两种方式来实现 ant 中类似函数的功能。
<sequential> <echomessage="====================================" /> <echomessage="prepare making a package in source code directory @{srcDir}" /> <echomessage="making a package with name @{packageName}" /> <echomessage="clean the environment after making a package" /> </sequential> </macrodef>
<projectname="testFunction"default="build"basedir="."> <targetname="package"> <!-- 为 srcDir 和 packageName 设置默认值 --> <propertyname="srcDir"value="defaultDir" /> <propertyname="packageName"value="defaultName" /> <echomessage="====================================" /> <echomessage="prepare making a package in source code directory ${srcDir}" /> <echomessage="making a package with name ${packageName}" /> <echomessage="clean the environment after making a package" /> </target>