ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jose Alberto Fernandez" <>
Subject RE: cvs commit: ant/src/main/org/apache/tools/ant/taskdefs Define
Date Fri, 28 May 2004 17:54:06 GMT
Not sure, in particular in Java you may et into funny class

In principle, you can have circular dependencies between jars, that is
by loading both jars in the same classloader instead of a hierarchy.

I cannot give you an example right now, but I would not be surprise if
one could get to the same situation with antlibs which are just jars
with descriptors.

Jose Alberto

> -----Original Message-----
> From: Dominique Devienne [] 
> Sent: 28 May 2004 16:38
> To: 'Ant Developers List'
> Subject: RE: cvs commit: 
> ant/src/main/org/apache/tools/ant/taskdefs Define
> > From: Jose Alberto Fernandez []
> > > We do barf on targets with circular dependencies, so why 
> wouldn't we 
> > > barf for circular AntLib dependencies?
> > 
> > Remember that in general you have no control of the dependencies of 
> > Antlibs (since they may be shrink-wrap 3rd party binary libraries). 
> > So, it could be the case that you reach such a situation 
> just because 
> > two 3rd party antlibs have common dependencies or something.
> > 
> > You need to get the right behavior without needing to alter 
> the libs.
> That's just the point! Two AntLibs having common dependencies 
> is not cicurlar, so won't be an error. Any scenario where 
> AntLibs are mutually dependent, directly or not, is an error, 
> so the AntLibs *should* be altered, i.e. fixed.
> And for BC, it's better to lock down the behavior initially, 
> and possibly relax it in the future based on real world 
> feedback, rather than being lax initially, and breaking BC is 
> we finally discovered we should not have been that lax...
> I vote for raising on exception (assuming I understood the 
> issue correctly). Peter can correct me. --DD
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

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

View raw message