Hi,

>> IMHO dependency fetching is the *worst* of the ideas that Maven has 
>> popularised.

Hmm, dependency fetching is the *best* in my opinion - so we 
disagree :-) 

>> Instead of having a controlled build, you get a build where it's 
>> possible that every single build is done against a different set 
>> of artifacts

How come? A dependency uniquely identifies an artefact and assuming you 
can't override (
versioned) artefacts - how do you end up with different artefacts?

>> I prefer to know which libraries I'm building my code against :)

No you don't. This is the biggest mistake of Maven. The version of
an artefact is not important at all. However, I don't want to intro-
duce this into Ant. I just favour auto-download of artefacts.

>> As for the problem you have, different organizations deal with 
>> the  problem in different ways.

Kev, you didn't take the most obvious solution into account: 

5. REPLACE ANT WITH MAVEN !!

And this  is a real pitty cause Ant is the better solution, almost
at least. Just add some coool features please ..

Regards,

Wolfgang Häfelinger
Research & Architecture | Dir. 2.7.0.2
European Patent Office
Patentlaan 3-9 | 2288 EE Rijswijk | The Netherlands
Tel. +31 (0)70 340 4931
[EMAIL PROTECTED]
http://www.epo.org




Kev Jackson <[EMAIL PROTECTED]> 
15-11-2007 03:11
Please respond to
"Ant Developers List" <dev@ant.apache.org>


To
Ant Developers List <dev@ant.apache.org>
cc

Subject
Re: ApacheCon Presentation






Hi,

> I wonder whether Ant/Ivy has a "dependency fetching" mechanism like 
Maven 
> has
> regarding "plugins".  This  is  what I have in mind: A antlib  provides 
> tasks 
> and macros and implements them in terms of 3rdparty libraries. Those 
> libraries
> are  described in dependencies (perhaps a la  Maven). If such a antlib 
is 
> used,
> Ant will  download those 3rdparty stuff some  cache  directory and 
adjust 
> it's 
> classpath. 

IMHO dependency fetching is the *worst* of the ideas that Maven has 
popularised.

Instead of having a controlled build, you get a build where it's 
possible that every single build is done against a different set of 
artifacts

I prefer to know which libraries I'm building my code against :)

As for the problem you have, different organizations deal with the 
problem in different ways.

1 - Place the full Ant (core) + extensions (antlibs etc) under version 
control as a 'build' project - make this the only sanctioned way of 
building the rest of your code
* This relies on allowing binaries into your scm - sorry *

2 - Use multiple build files and a complex arrangements of classloader 
task, wget/get etc to pull in the correct dependencies for the build

3 - Edit the ant.bat|ant.sh

4 - Write a wrapper script that calls ant.bat|ant.sh with the correct 
env setup

As you can see in other replies, the 'solution' varies depending on the 
particular needs of the organization :)

Thanks,
Kev

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Reply via email to