Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
User talk:Gaurangtpatel.gmail.com
Contents
Proposal: Ant buildfile refactorings
There is a need of tool for refactoring of ant scripts.
Ant macros can be used to achieve re usability of scripts. A macrodef, short for a macro definition, can be seen as defining a reusable piece of Ant functionality – if you think of it in terms of Java code, this would be a reusable utility method. An import is a way to include external Ant functionality into another script.
A macrodef for compiling Java code using the javac Ant task could look like this:
<macrodef name="m_compile">
<attribute name="build.dir" default="${build.dir}" /> <attribute name="classpath.id" default="default.classpath" /> <attribute name="src.dir" default="${src.java.dir}" /> <sequential> <mkdir dir="@{build.dir}" /> <javac destdir="@{build.dir}" debug="${debug}" optimize="${optimize}"> <classpath refid="@{classpath.id}" /> <src path="@{src.dir}" /> </javac> </sequential>
</macrodef>
IMPORT
<import file="${buildfiles.dir}/macro/compile.xml" />
This statement imports the XML from the compile.xml file into the place where the import statement is.
Challenges and Risks
It will be interesting to see how deep I can go into developing this enhancement to platform ant. Risks: I don't affevt any of the current functionalities.