No - loaded from an AntLib a macro should behave as a "usual" task.
So it doesnt matter in what "language" the task was written :-)

Jan


> -----Ursprüngliche Nachricht-----
> Von: Stefan Bodewig [mailto:[EMAIL PROTECTED]
> Gesendet am: Dienstag, 19. April 2005 17:38
> An: [EMAIL PROTECTED]
> Betreff: BuildException wrapping in <macrodef>
> 
> Hi,
> 
> using
> 
> <project xmlns:au="antlib:org.apache.ant.antlib.antunit">
>   <au:assertEquals expected="bar" actual="baz"/>
> </project>
> 
> I get
> 
> /tmp/au.xml:2: The following error occurred while executing this line:
> jar:file:/home/bodewig/ASF/jakarta/ant/sandbox/antlibs/antunit
> /trunk/build/lib/ant-antunit.jar!/org/apache/ant/antlib/antuni
> t/antlib.xml:40: Expected 'bar' but was 'baz'
> 
> what I really want is
> 
> /tmp/au.xml:2:  Expected 'bar' but was 'baz'
> 
> The reason for this is that assertEquals is a <macrodef> and
> MacroInstance unconditionally wraps any BuildExecption into a new one
> adding the macro definition's location.
> 
> For tasks provided in antlibs, the user probably doesn't care whether
> it is a macrodef or a plain task.
> 
> Would anybody object if I added an attribute to macrodef that you
> could use to turn off the wrapping (default would certainly be with
> wrapping)?
> 
> Another side effect of this is that an ExitStatusException thrown by
> <fail> nested into <macrodef> gets turned into a plain BuildException
> again.
> 
> Stefan
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 

Reply via email to