ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Donald <dona...@apache.org>
Subject RE: Can someone tell me what is so great about Ant?
Date Wed, 07 Feb 2001 01:15:10 GMT
At 10:48  7/2/01 +1100, 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 agree and hence ...

>> The reason I love Ant is:
>> 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.

Let me get this straight. Complex ant files are ... complex ... as are
complex makefiles. Not such a great point. Simple makefiles are ... simple.
Well .. yer ... but how many simple Makefiles are actually useful. Compare
the average makefile to compile and jar some classes vs average build file.
Makefile is a tad larger/more complex. You seem also to be happy that there
is implictness in makefiles rather than explicitness?

Ant files are designed to be simple. "Simple or bust" would be a good motto
I think. Hence why they are more simple. Arguements like - complex build
processes are complex hence your build tool is irrelevent if you aim for
simplicty is somewhat foolish, no? Then you argue that you believe there
should be a build engineer/process manager ...

>> 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.

umm - to get it even vaguely as fast as ant you would have to be a serious
god with the makefiles. The main advantages with ant is that it only
executes most tools once and if the tool is java based it usually executes
it in VM rather than creating a new VM (which is costly).

>> 3. It is platform-independent.
>
>Which is not always a win.
>It's probably good for java development, but in all things, being platform
independant means you lose the power of your platform.
>If we're always going to do our builds on unix, then have a build tool
that leverages the power of unix may be a good thing.
>cf All the people wanting to include environment variables in build files.

actually you can get environment variables from ant now .... check out
environment parameter to property ...

>> 5. Lot of custom tasks for Java related tasks such as jar, 
>> war, ear, javadoc,
>>    and a lot more. See
>>    http://jakarta.apache.org/ant/jakarta-ant/docs/
>>    for a list of all the Ant tasks.
>
>Which is just as easy in make.

not really. Especially when the files are scattered all over the place. In
make it would require judicious use of copying etc. Ant gets around this
because it is done in java and has more options than the command line tool.

>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.

It's mis-understood by people who have good experiences with it too. It is
misunderstood by people who have worked with it for 4-5 years.

>Writing makefiles that work is a complicated process, but I don't find
> that writing ant files is much easier.

I would actually say that writing complex several project ant files is more
difficult in ant than it is in make. Hopefully this will change in Ant2.0
though. Not sure.

Cheers,

Pete

*-----------------------------------------------------*
| "Faced with the choice between changing one's mind, |
| and proving that there is no need to do so - almost |
| everyone gets busy on the proof."                   |
|              - John Kenneth Galbraith               |
*-----------------------------------------------------*


Mime
View raw message