| <html> |
| |
| <head> |
| <meta http-equiv="Content-Language" content="en-us"> |
| <title>Ant User Manual</title> |
| </head> |
| |
| <body> |
| |
| <h2><a name="script">Script</a></h2> |
| <h3>Description</h3> |
| <p>Execute a script in a |
| <a href="http://oss.software.ibm.com/developerworks/opensource/bsf/" target="_top">BSF</a> supported language.</p> |
| <p><b>Note:</b> This task depends on external libraries not included in the Ant distribution. |
| See <a href="../install.html#librarydependencies">Library Dependencies</a> for more information.</p> |
| <p>All items (tasks, targets, etc) of the running project are |
| accessible from the script, using either their <code>name</code> or |
| <code>id</code> attributes.</p> |
| <p>Scripts can do almost anything a task written in Java could do.</p> |
| <h3>Parameters</h3> |
| <table border="1" cellpadding="2" cellspacing="0"> |
| <tr> |
| <td valign="top"><b>Attribute</b></td> |
| <td valign="top"><b>Description</b></td> |
| <td align="center" valign="top"><b>Required</b></td> |
| </tr> |
| <tr> |
| <td valign="top">language</td> |
| <td valign="top">The programming language the script is written in. |
| Must be a supported BSF language</td> |
| <td valign="top" align="center">No</td> |
| </tr> |
| <tr> |
| <td valign="top">src</td> |
| <td valign="top">The location of the script as a file, if not inline</td> |
| <td valign="top" align="center">No</td> |
| </tr> |
| </table> |
| <h3>Examples</h3> |
| <blockquote><pre> |
| <project name="squares" default="main" basedir="."> |
| |
| <target name="setup"> |
| |
| <script language="javascript"> <![CDATA[ |
| |
| for (i=1; i<=10; i++) { |
| echo = squares.createTask("echo"); |
| main.addTask(echo); |
| echo.setMessage(i*i); |
| } |
| |
| ]]> </script> |
| |
| </target> |
| |
| <target name="main" depends="setup"/> |
| |
| </project> |
| </pre></blockquote> |
| <p>generates</p> |
| <blockquote><pre> |
| setup: |
| |
| main: |
| 1 |
| 4 |
| 9 |
| 16 |
| 25 |
| 36 |
| 49 |
| 64 |
| 81 |
| 100 |
| |
| BUILD SUCCESSFUL |
| </pre></blockquote> |
| <p>Another example, using <a href="../using.html#references">references by id</a> |
| and two different scripting languages:</p> |
| <blockquote><pre> |
| <project name="testscript" default="main"> |
| <target name="sub"> |
| <echo id="theEcho"/> |
| </target> |
| |
| <target name="sub1"> |
| <script language="netrexx"><![CDATA[ |
| theEcho.setMessage("In sub1") |
| sub.execute |
| ]]></script> |
| </target> |
| |
| <target name="sub2"> |
| <script language="javascript"><![CDATA[ |
| theEcho.setMessage("In sub2"); |
| sub.execute(); |
| ]]></script> |
| </target> |
| |
| <target name="main" depends="sub1,sub2"/> |
| </project> |
| </pre></blockquote> |
| <p>generates</p> |
| <blockquote><pre> |
| sub1: |
| In sub1 |
| |
| sub2: |
| In sub2 |
| |
| main: |
| |
| BUILD SUCCESSFUL |
| </pre></blockquote> |
| |
| <hr> |
| <p align="center">Copyright © 2000,2001 Apache Software Foundation. All rights |
| Reserved.</p> |
| |
| </body> |
| </html> |
| |