A wrapper that lets you run a set of tasks and optionally run a different set of tasks if the first set fails and yet another set after the first one has finished.
This mirrors Java's try/catch/finally.
The tasks inside of the required <try>
element will be run. If one of them should throw a BuildException
several things can happen:
<catch>
block, the
exception will be passed through to Ant.<catch>
block, the tasks
nested into it will be run.If a <finally>
block is present, the task
nested into it will be run, no matter whether the first tasks have
thrown an exception or not.
Attribute | Description | Required |
---|---|---|
property | Name of a property that will receive the message of the exception that has been caught (if any) | No. |
reference | Id of a reference that will point to the exception object that has been caught (if any) | No |
<trycatch property="foo" reference="bar"> <try> <fail>Tada!</fail> </try> <catch> <echo>In <catch>.</echo> </catch> <finally> <echo>In <finally>.</echo> </finally> </trycatch> <echo>As property: ${foo}</echo> <property name="baz" refid="bar" /> <echo>From reference: ${baz}</echo>
results in
[trycatch] Caught exception: Tada! [echo] In <catch>. [echo] In <finally>. [echo] As property: Tada! [echo] From reference: Tada!
Copyright © 2002-2003 Ant-Contrib Project. All rights Reserved.