ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dominique Devienne <>
Subject Re: Ant XML Files precompilation
Date Thu, 06 Aug 2009 14:00:46 GMT
On Thu, Aug 6, 2009 at 8:00 AM, Raja Nagendra
Kumar<> wrote:
> However, due to imports and multiple times using of <ant> task with no
> inheritance, time taken per device is more than an minute..

On a one minute build, parsing the build file(s) is likely peanuts
compared to the build itself, unless you are doing some unusual stuff.
In any case, profile before you optimize.

> so for 100 devices.. it needs lot more time than tolerable..

Since it sounds like your 100 devices builds are orthogonal from each
other, maybe you could build them in <parallel>? (or enhance <subant>
to support parallel building?)

> In this context, is there a way Reduce the time of XML parsing/time of
> importing of xmls by way of any precompilation such as convert the xml file
> in .class files once and use the class files rest of the time etc..
> Some thing in lines to pre-compilation of jsp is there any thing for ant xml
> files pre-compilation.

There's no such thing in Ant. Given how Ant operates, the best you
could achieve would be a pre-parsing to UnknownElement, but since the
parsing stage is mixed up with Project and Target creation (and legacy
id handling I think), just doing that would be non-trivial and likely
not BC. Ant has no "intermediate language" that logically represents
the build files and build in general, and in fact doesn't have clear
static and dynamic contexts the way XSLT does for example, which is an
essential feature to allow having the equivalent of a pre-compiled

But I'm sure there's probably room for improvement in your build times
still, even with stock Ant, by taking a step back from your current
build design and think it thru, internally or on list, if you don't
mind sharing more details about what's going on. --DD

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message