| <html> |
| |
| <head> |
| <meta http-equiv="Content-Language" content="en-us"> |
| <title>Installing Ant</title> |
| </head> |
| |
| <body> |
| <h1>Installing Ant</h1> |
| <h2><a name="getting">Getting Ant</a></h2> |
| <h3>Binary Edition</h3> |
| <p>The latest stable version of Ant can be downloaded from <a |
| href="http://jakarta.apache.org/builds/ant/release/v1.4.1/bin/"> |
| http://jakarta.apache.org/builds/ant/release/v1.4.1/bin/</a>. |
| |
| If you like living on the edge, you can download the latest version from <a |
| href="http://jakarta.apache.org/builds/ant/nightly/">http://jakarta.apache.org/builds/ant/nightly/</a>.</p> |
| <h3>Source Edition</h3> |
| |
| <p>If you prefer the source edition, you can download the source for the latest Ant release from <a |
| href="http://jakarta.apache.org/builds/ant/release/v1.4.1/src/"> |
| http://jakarta.apache.org/builds/ant/release/v1.4.1/src/</a>. |
| |
| Again, if you prefer the edge, you can access |
| the code as it is being developed via CVS. The Jakarta website has details on |
| <a href="http://jakarta.apache.org/site/cvsindex.html" target="_top">accessing CVS</a>. Please checkout the |
| jakarta-ant module. |
| |
| See the section <a href="#buildingant">Building Ant</a> on how to |
| build Ant from the source code. |
| You can also access the |
| <a href="http://cvs.apache.org/viewcvs/jakarta-ant/" target="_top"> |
| Ant CVS repository</a> on-line. </p> |
| |
| <hr> |
| <h2><a name="sysrequirements">System Requirements</a></h2> |
| Ant has been used successfully on many platforms, including Linux, |
| commercial flavours of Unix such as Solaris and HP-UX, |
| Windows 9x and NT, Novell Netware 6 and MacOS X. |
| <p> |
| To build and use Ant, you must have a JAXP-compliant XML parser installed and |
| available on your classpath.</p> |
| <p> |
| The binary distribution of Ant includes the latest version of the |
| <a href="http://xml.apache.org/crimson/index.html">Apache Crimson</a> XML parser. |
| Please see |
| <a href="http://java.sun.com/xml/" target="_top">http://java.sun.com/xml/</a> |
| for more information about JAXP. |
| If you wish to use a different JAXP-compliant parser, you should remove |
| <code>jaxp.jar</code> and <code>crimson.jar</code> |
| from Ant's <code>lib</code> directory. |
| |
| You can then either put the jars from your preferred parser into Ant's |
| <code>lib</code> directory or put the jars on the system classpath.</p> |
| |
| <p> |
| For the current version of Ant, you will also need a JDK installed on |
| your system, version 1.1 or later. Some tasks work better on post-1.1 systems; |
| some tasks only work on Java 1.2 and successors. |
| A future version of Ant -Ant 2.0- will require JDK 1.2 or later, though |
| Ant 1.x strives to retain 1.1 compatibility. |
| </p><p> |
| <strong>Note: </strong>The Microsoft JVM/JDK is not adequate on its own, although the MS |
| compiler is supported. |
| </p> |
| <p> |
| <strong>Note #2: </strong>If a JDK is not present, only the JRE runtime, then many tasks will not work. |
| </p> |
| <hr> |
| <h2><a name="installing">Installing Ant</a></h2> |
| <p>The binary distribution of Ant consists of three directories: |
| <code>bin</code>, |
| <code>docs</code> and |
| <code>lib</code> |
| |
| Only the <code>bin</code> and <code>lib</code> directories are |
| required to run Ant. |
| |
| To install Ant, choose a directory and copy the distribution |
| file there. This directory will be known as ANT_HOME. |
| </p> |
| |
| <table width="80%"> |
| <tr> |
| <td colspan="2"> |
| <b>Windows 95 and Windows 98 Note:</b> |
| </td> |
| </tr> |
| <tr> |
| <td width="5%"> </td> |
| <td><i> |
| On these systems, the script used to launch Ant will have |
| problems if ANT_HOME is a long filename. This is due to |
| limitations in the OS's handling of the <code>"for"</code> |
| batch-file statement. It is recommended, therefore, that Ant be |
| installed in a <b>short</b> path, such as C:\Ant.</i> |
| </td> |
| </tr> |
| </table> |
| |
| <p> |
| Before you can run ant there is some additional set up you |
| will need to do:</p> |
| <ul> |
| <li>Add the <code>bin</code> directory to your path.</li> |
| <li>Set the <code>ANT_HOME</code> environment variable to the |
| directory where you installed Ant. On some operating systems the ant |
| wrapper scripts can guess <code>ANT_HOME</code> (Unix dialects and |
| Windows NT/2000) - but it is better to not rely on this behavior.</li> |
| <li>Optionally, set the <code>JAVA_HOME</code> environment variable |
| (see the <a href="#advanced">Advanced</a> section below). |
| This should be set to the directory where your JDK is installed.</li> |
| </ul> |
| <p><strong>Note:</strong> Do not install Ant's ant.jar file into the lib/ext |
| directory of the JDK/JRE. Ant is an application, whilst the extension |
| directory is intended for JDK extensions. In particular there are security |
| restrictions on the classes which may be loaded by an extension.</p> |
| |
| <h3><a name="optionalTasks">Optional Tasks</a></h3> |
| <p>Ant supports a number of optional tasks. An optional task is a task which |
| typically requires an external library to function. The optional tasks are |
| packaged separately from the core Ant tasks. This package is available in |
| the same download directory as the core ant distribution. The current |
| jar containing optional tasks is named <code>jakarta-ant-1.4.1-optional.jar</code>. |
| This jar should be downloaded and placed in the lib directory of your Ant |
| installation.</p> |
| |
| <p>The external libraries required by each of the optional tasks is detailed |
| in the <a href="#librarydependencies">Library Dependencies</a> section. These external |
| libraries may either be placed in Ant's lib directory, where they will be picked up |
| automatically, or made available on the system CLASSPATH environment variable. |
| </p> |
| |
| <h3>Windows</h3> |
| <p>Assume Ant is installed in <code>c:\ant\</code>. The following sets up the |
| environment:</p> |
| <pre>set ANT_HOME=c:\ant |
| set JAVA_HOME=c:\jdk1.2.2 |
| set PATH=%PATH%;%ANT_HOME%\bin</pre> |
| |
| <h3>Unix (bash)</h3> |
| <p>Assume Ant is installed in <code>/usr/local/ant</code>. The following sets up |
| the environment:</p> |
| <pre>export ANT_HOME=/usr/local/ant |
| export JAVA_HOME=/usr/local/jdk-1.2.2 |
| export PATH=${PATH}:${ANT_HOME}/bin</pre> |
| |
| <h3>Unix (csh)</h3> |
| <pre>setenv ANT_HOME /usr/local/ant |
| setenv JAVA_HOME /usr/local/jdk-1.2.2 |
| set path=( $path $ANT_HOME/bin )</pre> |
| |
| |
| <h3><a name="advanced">Advanced</a></h3> |
| |
| <p>There are lots of variants that can be used to run Ant. What you need is at |
| least the following:</p> |
| <ul> |
| <li>The classpath for Ant must contain <code>ant.jar</code> and any jars/classes |
| needed for your chosen JAXP-compliant XML parser.</li> |
| <li>When you need JDK functionality |
| (such as for the <a href="CoreTasks/javac.html">javac</a> task or the |
| <a href="CoreTasks/rmic.html">rmic</a> task), then for JDK 1.1, the <code>classes.zip</code> |
| file of the JDK must be added to the classpath; for JDK 1.2 or JDK 1.3, <code>tools.jar</code> |
| must be added. The scripts supplied with Ant, |
| in the <code>bin</code> directory, will add |
| the required JDK classes automatically, if the <code>JAVA_HOME</code> |
| environment variable is set.</li> |
| |
| <li>When you are executing platform-specific applications, such as the |
| <a href="CoreTasks/exec.html">exec</a> task or the |
| <a href="CoreTasks/cvs.html">cvs</a> task, the property <code>ant.home</code> |
| must be set to the directory containing where you installed Ant. Again |
| this is set by the Ant scripts to the value of the ANT_HOME environment |
| variable.</li> |
| </ul> |
| The supplied ant shell scripts all support an <tt>ANT_OPTS</tt> |
| environment variable which can be used to supply extra options |
| to ant. Some of the scripts also read in an extra script stored |
| in the users home directory, which can be used to set such options. Look |
| at the source for your platform's invocation script for details. |
| |
| <hr> |
| <h2><a name="buildingant">Building Ant</a></h2> |
| <p>To build Ant from source, you can either install the Ant source distribution |
| or checkout the jakarta-ant module from CVS.</p> |
| <p>Once you have installed the source, change into the installation |
| directory.</p> |
| |
| <p>Set the <code>JAVA_HOME</code> environment variable |
| to the directory where the JDK is installed. |
| See <a href="#installing">Installing Ant</a> |
| for examples on how to do this for your operating system. </p> |
| |
| <p>Make sure you have downloaded any auxiliary jars required to |
| build tasks you are interested in. These should either be available |
| on the CLASSPATH or added to the <code>lib/optional</code> |
| directory. |
| See <a href="#librarydependencies">Library Dependencies</a> |
| for a list of jar requirements for various features. |
| Note that this will make the auxiliary jars |
| available for the building of Ant only. For running Ant you will |
| still need to |
| make the jars available as described under |
| <a href="#installing">Installing Ant</a>.</p> |
| |
| <p>Your are now ready to build Ant:</p> |
| <blockquote> |
| <p><code>build -Ddist.dir=<<i>directory_to_contain_Ant_distribution</i>> dist</code> (<i>Windows</i>)</p> |
| <p><code>build.sh -Ddist.dir=<<i>directory_to_contain_Ant_distribution</i>> dist</code> (<i>Unix</i>)</p> |
| </blockquote> |
| |
| <p>This will create a binary distribution of Ant in the directory you specified.</p> |
| |
| <p>The above action does the following:</p> |
| <ul> |
| |
| <li>If necessary it will bootstrap the Ant code. Bootstrapping involves the manual |
| compilation of enough Ant code to be able to run Ant. The bootstrapped Ant is |
| used for the remainder of the build steps. </li> |
| |
| <li>Invokes the bootstrapped Ant with the parameters passed to the build script. In |
| this case, these parameters define an Ant property value and specify the "dist" target |
| in Ant's own <code>build.xml</code> file.</li> |
| </ul> |
| |
| <p>On most occasions you will not need to explicitly bootstrap Ant since the build |
| scripts do that for you. If however, the build file you are using makes use of features |
| not yet compiled into the bootstrapped Ant, you will need to manually bootstrap. |
| Run <code>bootstrap.bat</code> (Windows) or <code>bootstrap.sh</code> (UNIX) |
| to build a new bootstrap version of Ant.</p> |
| |
| If you wish to install the build into the current <code>ANT_HOME</code> |
| directory, you can use: |
| <blockquote> |
| <p><code>build install</code> (<i>Windows</i>)</p> |
| <p><code>build.sh install</code> (<i>Unix</i>)</p> |
| </blockquote> |
| |
| You can avoid the lengthy Javadoc step, if desired, with: |
| <blockquote> |
| <p><code>build install-lite</code> (<i>Windows</i>)</p> |
| <p><code>build.sh install-lite</code> (<i>Unix</i>)</p> |
| </blockquote> |
| This will only install the <code>bin</code> and <code>lib</code> directories. |
| <p>Both the <code>install</code> and |
| <code>install-lite</code> targets will overwrite |
| the current Ant version in <code>ANT_HOME</code>.</p> |
| |
| <hr> |
| <h2><a name="librarydependencies">Library Dependencies</a></h2> |
| <p>The following libraries are needed in your CLASSPATH or in the |
| install directory's <code>lib</code> directory if you are using the |
| indicated feature. Note that only one of the regexp libraries is |
| needed for use with the mappers. You will also need to install the |
| Ant optional jar containing the task definitions to make these |
| tasks available. Please refer to the <a href="#optionalTasks"> |
| Installing Ant / Optional Tasks</a> section above.</p> |
| |
| <table border="1" cellpadding="2" cellspacing="0"> |
| <tr> |
| <td><b>Jar Name</b></td> |
| <td><b>Needed For</b></td> |
| <td><b>Available At</b></td> |
| </tr> |
| <tr> |
| <td>An XSL transformer like Xalan or XSL:P</td> |
| <td>style task</td> |
| <td><a href="http://xml.apache.org/xalan-j/index.html" |
| target="_top">http://xml.apache.org/xalan-j/index.html</a> for Xalan.<br> |
| XSL:P used to live at <a href="http://www.clc-marketing.com/xslp/" |
| target="_top">http://www.clc-marketing.com/xslp/</a>, but the link |
| doesn't work any longer and we are not aware of a replacement site.</td> |
| </tr> |
| <tr> |
| <td>jakarta-regexp-1.2.jar</td> |
| <td>regexp type with mappers</td> |
| <td><a href="http://jakarta.apache.org/regexp/" target="_top">jakarta.apache.org/regexp/</a></td> |
| </tr> |
| <tr> |
| <td>jakarta-oro-2.0.4.jar</td> |
| <td>regexp type with mappers and the perforce tasks</td> |
| <td><a href="http://jakarta.apache.org/oro/" target="_top">jakarta.apache.org/oro/</a></td> |
| </tr> |
| <tr> |
| <td>junit.jar</td> |
| <td>junit tasks</td> |
| <td><a href="http://www.junit.org/" target="_top">www.junit.org</a></td> |
| </tr> |
| <tr> |
| <td>stylebook.jar</td> |
| <td>stylebook task</td> |
| <td>CVS repository of <a href="http://xml.apache.org" target="_top">xml.apache.org</a></td> |
| </tr> |
| <tr> |
| <td>testlet.jar</td> |
| <td>test task</td> |
| <td><a href="http://java.apache.org/framework" target="_top">java.apache.org/framework</a></td> |
| </tr> |
| <tr> |
| <td>antlr.jar</td> |
| <td>antlr task</td> |
| <td><a href="http://www.antlr.org/" target="_top">www.antlr.org</a></td> |
| </tr> |
| <tr> |
| <td >bsf.jar</td> |
| <td>script task</td> |
| <td><a href="http://oss.software.ibm.com/developerworks/projects/bsf" target="_top"> |
| oss.software.ibm.com/developerworks/projects/bsf</a></td> |
| </tr> |
| <tr> |
| <td>netrexx.jar</td> |
| <td>netrexx task</td> |
| <td><a href="http://www2.hursley.ibm.com/netrexx" target="_top"> |
| www2.hursley.ibm.com/netrexx</a></td> |
| </tr> |
| <tr> |
| <td>rhino.jar</td> |
| <td>javascript with script task</td> |
| <td><a href="http://www.mozilla.org/rhino/" target="_top">www.mozilla.org/rhino</a></td> |
| </tr> |
| <tr> |
| <td>jpython.jar</td> |
| <td>python with script task</td> |
| <td><a href="http://www.jpython.org/" target="_top">www.jpython.org</a></td> |
| </tr> |
| <tr> |
| <td>jacl.jar and tcljava.jar</td> |
| <td>TCL with script task</td> |
| <td><a href="http://www.scriptics.com/java" target="_top">www.scriptics.com/java</a></td> |
| </tr> |
| <tr> |
| <td>netcomponents.jar</td> |
| <td>ftp and telnet tasks</td> |
| <td><a href="http://www.savarese.org/oro/downloads/index.html#NetComponents" |
| target="_top">www.savarese.org/oro/downloads</a></td> |
| </tr> |
| <tr> |
| <td>bcel.jar</td> |
| <td>classfileset data type<!-- and optional depend task -->.</td> |
| <td><a href="http://jakarta.apache.org/bcel/" target="_top">jakarta.apache.org/bcel/</a></td> |
| </tr> |
| <tr> |
| <td>mail.jar</td> |
| <td>Mail task with Mime encoding, and the MimeMail task</td> |
| <td><a href="http://java.sun.com/products/javamail/" |
| target="_top">http://java.sun.com/products/javamail/</a></td> |
| </tr> |
| <tr> |
| <td>activation.jar</td> |
| <td>Mail task with Mime encoding, and the MimeMail task</td> |
| <td><a href="http://java.sun.com/products/javabeans/glasgow/jaf.html" |
| target="_top">http://java.sun.com/products/javabeans/glasgow/jaf.html</a></td> |
| </tr> |
| <tr> |
| <td>jdepend.jar</td> |
| <td>jdepend task</td> |
| <td><a href="http://www.clarkware.com/software/JDepend.html" |
| target="_top">http://www.clarkware.com/software/JDepend.html</a></td> |
| </tr> |
| </table> |
| <br> |
| <hr> |
| <p align="center">Copyright © 2001-2002 Apache Software Foundation. All rights |
| Reserved.</p> |
| |
| </body> |
| </html> |
| |