Stefan Bodewig b6a3e9df36 License police on documentation files:
(1) Make sure there is a Copyright notice on all visible files.

(2) Make sure all years in which the file has been modified are
listed.

(3) Make sure the format is consistent, i.e. separate consecutive
years with a dash, not a comma.

When Stephane changed starteam.html it has been 2001 in France but
2002 in Australia - does that mean we add 2002 to the Copyright line
or not?  ;-)


git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@270652 13f79535-47bb-0310-9956-ffa450edef68
2002-01-10 08:48:33 +00:00

114 lines
3.3 KiB
HTML

<html>
<head>
<meta http-equiv="Content-Language" content="en-us">
<title>ANTLR Task</title>
</head>
<body>
<h2><a name="antlr">ANTLR</a></h2>
<h3>Description</h3>
<p>
Invokes the <a HREF="http://www.antlr.org/" target="_top">ANTLR</a> Translator generator
on a grammar file.
</p>
<p>
To use the ANTLR task, set the <i>target</i> attribute to the name of the
grammar file to process. Optionally, you can also set the
<i>outputdirectory</i> to write the generated file to a specific directory.
Otherwise ANTLR writes the generated files to the directory containing
the grammar file.
</p>
<p>
This task only invokes ANTLR if the grammar file is newer than the generated
files.
</p>
<p>
<i>
To successfully run ANTLR, your best option is probably to build the whole
jar with the provided script <b>mkalljar</b> and drop the resulting jar (about 300KB)
into ${ant.home}/lib. Dropping the default jar (70KB) is probably not enough
for most needs and your only option will be to add ANTLR home directory
to your classpath as described in ANTLR <tt>install.html</tt> document.
</i>
</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">target</td>
<td valign="top">The grammar file to process.</td>
<td valign="top" align="center">Yes</td>
</tr>
<tr>
<td valign="top">outputdirectory</td>
<td valign="top">
The directory to write the generated files to. If not set, the files
are written to the directory containing the grammar file.
</td>
<td valign="top" align="center">No</td>
</tr>
<!--tr>
<td valign="top">fork</td>
<td valign="top">Run ANTLR in a separate VM.</td>
<td align="center" valign="top">No, default is &quot;off&quot;</td>
</tr-->
<tr>
<td valign="top">dir</td>
<td valign="top">The directory to invoke the VM in. <!--(ignored if
fork is disabled)--></td>
<td align="center" valign="top">No</td>
</tr>
</table>
<h3><a name="nested">Nested Elements</a></h3>
<p><code>ANTLR</code> supports a nested <code>&lt;classpath&gt;</code>
element, that represents a <a href="../using.html#path">PATH like
structure</a>. It is given as a convenience if you have to specify
the original ANTLR directory. In most cases, dropping the appropriate
ANTLR jar in the normal Ant lib repository will be enough.</p>
<h4>jvmarg</h4>
<p><!--If fork is enabled, -->Additional parameters may be passed to the new
VM via nested <code>&lt;jvmarg&gt;</code> attributes, for example:</p>
<pre>
&lt;antlr target=...&gt;
&lt;jvmarg value=&quot;-Djava.compiler=NONE&quot;/&gt;
...
&lt;/antlr&gt;
</pre>
<p>would run ANTLR in a VM without JIT.</p>
<p><code>&lt;jvmarg&gt;</code> allows all attributes described in <a
href="../using.html#arg">Command line arguments</a>.</p>
<h3>Example</h3>
<blockquote><pre>
&lt;antlr
target=&quot;etc/java.g&quot;
outputdirectory=&quot;build/src&quot;
/&gt;
</pre></blockquote>
<p>
This invokes ANTLR on grammar file etc/java.g, writing the generated
files to build/src.
</p>
<hr>
<p align="center">Copyright &copy; 2001 Apache Software Foundation. All rights
Reserved.</p>
</body>
</html>