poi/src/documentation/content/xdocs/howtobuild.xml

146 lines
5.2 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.1//EN" "../dtd/document-v11.dtd">
<document>
<header>
<title>How To Build POI</title>
<authors>
<person email="glens@apache.org" name="Glen Stampoultzis" id="GS"/>
</authors>
</header>
<body>
<section>
<title>Installing Ant</title>
<p>
The POI build system requires two components to perform a
build.
<link href="ext:jakarta.apache.org/ant">Ant</link> and
<link href="ext:xml.apache.org/forrest">forrest</link>.
</p>
<p>
Specifically the build has been tested to work with Ant version
1.5.3 and Forrest 0.4. To install these products download
the distributions and follow the instructions in their
documentation. Make sure you don't forget to set the
environment variables FORREST_HOME and ANT_HOME. The
ANT_HOME/bin directory should be in the path.
</p>
<p>
One these products are installed you will also need to
download some extra jar files required by the build.
</p>
<table>
<tr>
<th>Library</th>
<th>Location</th>
</tr>
<tr>
<td>junit</td>
<td>http://www.ibiblio.org/maven/junit/jars/</td>
</tr>
<tr>
<td>xerces</td>
<td>http://www.ibiblio.org/maven/xerces/jars/</td>
</tr>
<tr>
<td>jdepend</td>
<td>http://www.ibiblio.org/maven/jdepend/jars/</td>
</tr>
</table>
<p>
Just pick the latest versions of these jars and place
them in ANT_HOME/lib
</p>
</section>
<section>
<title>Running the Build</title>
<p>
On the first run the ant build system will download all
the jars required by the project to build ant. If you're
behind a firewall this may cause some problems. Should you
need to it's possible to manually put the jars in the
correct directories. These can be obtained from here:
</p>
<table>
<tr>
<th>JAR</th>
<th>Location</th>
</tr>
<tr>
<td>/commons-logging/jars/commons-logging-1.0.1.jar</td>
<td>lib</td>
</tr>
<tr>
<td>/log4j/jars/log4j-1.2.8.jar</td>
<td>lib</td>
</tr>
<tr>
<td>/commons-beanutils/jars/commons-beanutils-1.6.jar</td>
<td>src/contrib/lib</td>
</tr>
<tr>
<td>/commons-collections/jars/commons-collections-2.1.jar</td>
<td>src/contrib/lib</td>
</tr>
<tr>
<td>/commons-lang/jars/commons-lang-1.0-b1.jar</td>
<td>src/contrib/lib</td>
</tr>
<tr>
<td>/junit/jars/junit-3.8.1.jar</td>
<td>lib</td>
</tr>
</table>
<p>
The main targets of interest to our users are:
</p>
<table>
<tr>
<th>Target</th>
<th>Description</th>
</tr>
<tr>
<td>clean</td>
<td>Erase all build work products (ie, everything in the
build directory</td>
</tr>
<tr>
<td>compile</td>
<td>Compiles all files from main, contrib and scratchpad</td>
</tr>
<tr>
<td>test</td>
<td>Run all unit tests from main, contrib and scratchpad</td>
</tr>
<tr>
<td>docs</td>
<td>Generate all documentation for the system</td>
</tr>
<tr>
<td>generate-records</td>
<td>Generate records from the XML record defintitions</td>
</tr>
<tr>
<td>generate-types</td>
<td>Generate types from the XML type definitions (this is
for HDF).</td>
</tr>
<tr>
<td>jar</td>
<td>Produce jar files</td>
</tr>
<tr>
<td>dist</td>
<td>Create a distribution.</td>
</tr>
<tr>
<td>clean-dist</td>
<td>Runs clean before creating the distribution.</td>
</tr>
</table>
</section>
</body>
</document>