ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Shireesh Thanneru <thann...@ece.villanova.edu>
Subject RE: Can someone tell me what is so great about Ant?
Date Wed, 07 Feb 2001 01:07:13 GMT

On Wed, 7 Feb 2001, Tim Vernum wrote:

>OK, I don't want to start a war here, but I think that have mis-information on ant-user
makes ant look bad.
I don't either, I am just tring to explain Ant's advantages.
>
>> 1. very easy to write and understand the build.xml file, 
>> unlike the Makefiles.
>
>That is entirely subjective.
>Simple makefiles are easy to understand.
>Complex makefiles are necessarily complex, as are complex build.xml files.
>I use both, and I don't see the win here for ant.
>
>I would say that most java developers can pick up a build.xml file and "get it",
> while they would have difficulty (at first) understanding the equivalent makefile,
> but I also see a place for build engineers, so I don't see that aiming your build
> process to meet the needs of your least experienced developers is a good thing.

I think depending on a build-engineer for building a project
is very bad. Every developer on the project should be able
to change the build file, this will eliminate a lot of work 
for the so called build engineer, and really, we don't need
a build engineer if we are using Ant.

>  
>> 2. Ant is super fast. On an average, it is atleast 10 times 
>> faster than make 
>>    files. See this article for why it is sooo fast:
>>    http://www.lutris.com/journal/January2001/articles/antEnhydra.html
>>    (You need to register with the Lutris Enhydra journal at
>>     http://www.lutris.com/products/journal_registration.html)
>
>I'm still waiting for Lutris to mail me my username/password, so I can't
> judge this article, but the conclusion doesn't meet with my experience.
>GNUmake is faster on my celeron than ant is on my PIII.

You will have to definitely agree on this, after you read that article.
Here is an excerpt from that article:
"
* Ant works with groups of files rather than individual files. 
With make you specify every file name that is built. With Ant 
you say build all the Java files in this directory tree. 
That turns 100 lines in 10 separate nested Makefiles into three 
lines in one file. Of course, Ant has pattern matching rules to 
include or exclude files. 
 
* Passing a huge group of files to javac at once makes compilation 
much faster. Ant is able to compile all of Enhydra in fifteen 
minutes versus an hour and fifty with make. Rebuilds occur in 
thirty seconds versus five minutes. 
 
* The other big part of Ant's performance gain comes from doing 
everything within a single Java process versus make which spawns 
a separate process for each command it executes. 

* Not only is Ant platform independent, it's development environment 
independent. If half of your development team uses Linux/emacs and 
the other half uses an IDE then you essentially have to maintain both 
systems. Both Borland's JBuilder and Sun's Forte have plugins for Ant 
enabling you to run them from within the IDE. With Ant your project has 
one build file for all platforms and all development environments. 

"
>Disclaimer: One of my hats is build engineer, and another is unix dude.
>Make is horrible and ugly, but it works, and is often mis-understood 
>by people who have had bad experiences with it.
>Writing makefiles that work is a complicated process, but I don't find
> that writing ant files is much easier.

I am a software developer and I find writing build files for Ant
very very easy, compared to make files.

Shireesh Thanneru


Mime
View raw message