ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gilles Scokart" <>
Subject RE: Problem extending ivy tasks due to classloader usage.
Date Mon, 29 Jan 2007 08:09:55 GMT
You should use the loaderref attributes in your taskdef class.

By default every takskdef use a different classloader.


> -----Original Message-----
> From: Eran Bartenstein [] 
> Sent: Sunday, January 28, 2007 10:10 AM
> To:
> Subject: Problem extending ivy tasks due to classloader usage.
> Hi,
> I have written my own task. My task extends the cachepath task.
> However, it seems that I can not find a way to use it.
> The problem is that Ivy tasks are loaded into ant classloader 
> prior to my taskdef decleration.
> The reason it is done that way, is since I want to keep the 
> ivy bundle intact rather than repack it.
> Also I do not want to pack all ivy jars with my project.
> Thus, when trying to use my task (which requires ivy in the 
> classapth) - if I specify ivy jar in the taskdef classpath I 
> get a classcast exeption (due to different classloaders). 
> When ommiting it - ivy jar is obviously missing in my classpath.
> Is there a way to hang one classloader under the ivy one ?
> Is there another way to extend ivy tasks from my code ?
> BTW - the task enables cachepath filtering for dependencies, 
> dependending on a set of specified extra attrbiutes.
> Thanks,
>            Eran B.
> _________________________________________________________________
> Express yourself instantly with MSN Messenger! Download today 
> it's FREE! 

View raw message