ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ninju Bohra <>
Subject RE: Getting my own core task implementation ahead of ant.jar
Date Fri, 28 Jan 2005 20:02:12 GMT
Hello Michael,

In your example what do all the "jar" means?  I assume
that in the <taskdef> task, the files
declares new task (using the my: namespace), while the
my.jar contains the implementation.

As for the <PreSetDef> task, are you re-directing the
core <jar> to use your <my:jar> task and by doing this
way (via the PreSetDef) you are not having to
pollute(or modify) the build.xml to use my:jar?

Is this right?

Ninju Bohra
--- Michael Sunde <> wrote:

> Hi,
> In our case we wanted to make an enhancement to one
> of the existing ant
> tasks. Here is what we did:
> - subclassed the existing implementation
> - Loaded new implementation using taskdef
> - use presetdef to redirect the standard
> implementation to our
> implementation.
> No need to modify all the existing calls and I can
> remove my changes by
> deleting a few lines in the build.xml file:
> <taskdef resource="" classpath="my.jar"
> uri="" loaderRef="my"/>
> <presetdef name="jar">
> 	<my:jar/>
> </presetdef>
> Michael
> -----Original Message-----
> From: Ninju Bohra [] 
> Sent: Friday, January 28, 2005 2:39 PM
> To:
> Subject: Getting my own core task implementation
> ahead of ant.jar
> Hello all,
> I am using ANT 1.6.2 on WinXP and Lunix
> enviroments...
> I have some issues with the <sql> task (defined by
> the class
> in ant.jar
> (i.e. does not handle
> PL/SQL, no interactive error handling, etc...) and
> have made suggestions
> to the ant-dev group as to how to resolve them.
> But while waiting for the ant-dev to resolve and
> agree on a solution, I
> wanted to modify my local ant environment to have
> contain my desired
> behavior.  Our first solution was to get the ANT
> source and modify the
> default defintion of the <sql> task.  After
> rebuilding the ant.jar
> everything worked but I felt uncomfortable that I
> had rebuilt and
> changed the ANT distribution source and so I unable
> to move up the next
> release (without having to re-do my code changes).
> Then I came up with the idea that maybe if I could
> put my modified <sql>
> task in a seperate jar and have that jar file (i.e.
> myTasks.jar), which
> has my <sql> task (same package and class name)
> implementation, be
> loaded before the core <sql> task then my <sql>
> would be used in place
> of the core ANT one.  And if and when the ant-dev
> group gets around to
> implementing some of my suggestions in the core
> <sql> task, all I need
> to do is remove my class from my jar file and I will
> auto-magically pick
> up the core <sql> task class.
> Which comes to my core question, is this possible...
> and if so how/where
> do I list my jar infront of ant.jars on both the
> WinXP enviroment
> (ant.bat, ant.cmd, antRun.bat) and the Lunix/UNIX
> enviroments (ant and
> antrun)?
> I am also open to other ways to solve the problem of
> getting a custom
> implementation while still using the standard task
> name in my build.xml
> files?  I did not want to create my own task name
> (i.e. <MYsql>) and use
> the <taskdef> to point to my custom implementation
> (with different
> package or class name) because then I would make a
> lot of changes
> if/when I moved back to the updated core task (i.e.
> <sql>).
> I know that is way to wordy, but thanks for your
> input in advance,
> Ninju Bohra
> ---------------------------------
> Do you Yahoo!?
>  Meet the all-new My Yahoo! - Try it today! 
> To unsubscribe, e-mail:
> For additional commands, e-mail:

Do you Yahoo!? 
Yahoo! Mail - Helps protect you from nasty viruses.

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

View raw message