ant/docs/manual/running.html
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

155 lines
6.2 KiB
HTML

<html>
<head>
<meta http-equiv="Content-Language" content="en-us">
<title>Apache Ant User Manual</title>
</head>
<body>
<h1>Running Ant</h1>
<h2><a name="commandline">Command Line</a></h2>
<p> If you've installed Ant as described in the
<a href="install.html"> Installing Ant</a> section,
running Ant from the command-line is simple: just type
<code>ant</code>.</p>
<p>When no arguments are specified, Ant looks for a <code>build.xml</code>
file in the current directory and, if found, uses that file as the
buildfile and runs the &quot;default&quot; target.
If you use the <code>-find</code> option,
Ant will search for a buildfile first in the current directory, then in
the parent directory, and so on, until either a buildfile is found or the root
of the filesystem has been reached. To make Ant use
a buildfile other than <code>build.xml</code>, use the command-line
option <code>-buildfile <i>file</i></code>,
where <i>file</i> is the name of the buildfile you want to use.</p>
<p>You can also set <a href="using.html#properties">properties</a> that
override properties specified in the
buildfile (see the <a href="CoreTasks/property.html">property</a> task).
This can be done with
the <nobr><code>-D<i>property</i>=<i>value</i></code></nobr> option,
where <i>property</i> is the name of the property,
and <i>value</i> is the value for that property.
This can also be used to pass in the value of environment variables.
Just pass <nobr><code>-DMYVAR=%MYVAR%</code></nobr> (Windows) or
<nobr><code>-DMYVAR=$MYVAR</code></nobr> (Unix)
to Ant - you can then access
these variables inside your buildfile as <code>${MYVAR}</code>.
You can also access environment variables using the <a href="CoreTasks/property.html">
property</a> task.
</p>
<p>Options that affect the amount of logging output by Ant are: <nobr><code>-quiet</code></nobr>,
which instructs Ant to print less
information on the console when running;
<nobr><code>-verbose</code></nobr>, which causes Ant to print
additional information to the console; and <nobr><code>-debug</code></nobr>,
which causes Ant to print considerably more additional information.
</p>
<p>It is also possible to specify one or more targets that should be executed.
When omitted, the target that is specified in the
<code>default</code> attribute of the
<a href="using.html#projects"><code>project</code></a> tag is
used.</p>
<p>The <nobr><code>-projecthelp</code></nobr> option prints out a list
of the buildfile's targets, along with the
text in the <code>description</code> attribute of the target,
if one was specified, followed by a list of those targets without one.</p>
<h3><a name="options">Command-line Options Summary</a></h3>
<pre>ant [options] [target [target2 [target3] ...]]
Options:
-help print this message
-projecthelp print project help information
-version print the version information and exit
-quiet be extra quiet
-verbose be extra verbose
-debug print debugging information
-emacs produce logging information without adornments
-logfile <i>file</i> use given file for log output
-logger <i>classname</i> the class that is to perform logging
-listener <i>classname</i> add an instance of class as a project listener
-buildfile <i>file</i> use specified buildfile
-find <i>file</i> search for buildfile towards the root of the filesystem and use the first one found
-D<i>property</i>=<i>value</i> set <i>property</i> to <i>value</i>
</pre>
<p>For more information about <code>-logger</code> and
<code>-listener</code> see the section <a
href="listeners.html">Loggers &amp; Listeners</a>
<h3>Examples</h3>
<blockquote>
<pre>ant</pre>
</blockquote>
<p>runs Ant using the <code>build.xml</code> file in the current directory, on
the default target.</p>
<blockquote>
<pre>ant -buildfile test.xml</pre>
</blockquote>
<p>runs Ant using the <code>test.xml</code> file in the current directory, on
the default target.</p>
<blockquote>
<pre>ant -buildfile test.xml dist</pre>
</blockquote>
<p>runs Ant using the <code>test.xml</code> file in the current directory, on a
target called <code>dist</code>.</p>
<blockquote>
<pre>ant -buildfile test.xml -Dbuild=build/classes dist</pre>
</blockquote>
<p>runs Ant using the <code>test.xml</code> file in the current directory, on a
target called <code>dist</code>, setting the <code>build</code> property to the
value <code>build/classes</code>.</p>
<h3><a name="files">Files</a></h3>
<p>The Ant wrapper script for Unix will source (read and evaluate) the
file <code>~/.antrc</code> before it does anything - the Windows batch
file invokes <code>%HOME%\antrc_pre.bat</code> at the start and
<code>%HOME%\antrc_post.bat</code> at the end. You can use these
files to set/unset environment variables that should only be visible
during the execution of Ant. See the next section for example.</p>
<h3><a name="envvars">Environment Variables</a></h3>
<p>The wrapper scripts use the following environment variables (if
set):</p>
<ul>
<li><code>JAVACMD</code> - full path of the Java executable. Use this
to invoke a different JVM than <code>JAVA_HOME/bin/java(.exe)</code>.</li>
<li><code>ANT_OPTS</code> - command-line arguments that should be
passed to the JVM. For example, you can define properties or set
the maximum Java heap size here.</li>
<li><code>ANT_ARGS</code> - Ant command-line arguments. For example,
set <code>ANT_ARGS</code> to point to a different logger and to
include the <code>-find</code> flag.</li>
</ul>
<h2><a name="viajava">Running Ant via Java</a></h2>
<p>If you have installed Ant in the do-it-yourself way, Ant can be started
with:</p>
<blockquote>
<pre>java -Dant.home=c:\ant org.apache.tools.ant.Main [options] [target]</pre>
</blockquote>
<p>These instructions actually do exactly the same as the <code>ant</code>
command. The options and target are the same as when running Ant with the <code>ant</code>
command. This example assumes you have set your classpath to include:</p>
<ul>
<li><code>ant.jar</code></li>
<li>jars/classes for your XML parser</li>
<li>the JDK's required jar/zip files</li>
</ul>
<br>
<hr>
<p align="center">Copyright &copy; 2001 Apache Software Foundation. All rights
Reserved.</p>
</body>
</html>