| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| |
| $Id$ |
| |
| ============================================= |
| Building The Tomcat 5.5 Servlet/JSP Container |
| ============================================= |
| |
| This subproject contains the source code for Tomcat 5.5, a container that |
| implements the Servlet 2.4 and JSP 2.0 specifications from the Java |
| Community Process <http://www.jcp.org/>. |
| |
| Note: If you just need to run Apache Tomcat, it is not necessary to build |
| it. You may simply download a binary distribution. It is cross-platform. |
| Read RUNNING.txt for the instruction on how to run it. |
| |
| In order to build a binary distribution version of Apache Tomcat from a |
| source distribution, you will need to perform the build on a Windows |
| machine (Windows XP/SP2 is known to work). Do the following: |
| |
| |
| (0) Download and Install a Java Development Kit |
| |
| * The default distribution of Tomcat 5.5.x requires a 5.0 or later JDK. |
| Tomcat can be built using a 1.4.x JDK but you will need to copy the contents |
| of the compat directory (created by the build process) to your build directory |
| before Tomcat will start. |
| |
| The standard ASF distributions are built with a 1.4.x JDK. |
| |
| * If the JDK is already installed, skip to (1). |
| |
| * Download a Java Development Kit (JDK) release (version 1.4.x or later) from: |
| |
| http://java.sun.com/j2se/ |
| |
| * Install the JDK according to the instructions included with the release. |
| |
| * Set an environment variable JAVA_HOME to the pathname of the directory |
| into which you installed the JDK release. |
| |
| |
| (1) Install Apache Ant 1.6.2 or later on your computer |
| |
| * If Apache Ant 1.6.2 or later is already installed on your computer, skip to (2). |
| |
| * Download a binary distribution of Ant 1.6.2 or later from: |
| |
| http://ant.apache.org/bindownload.cgi |
| |
| * Unpack the binary distribution into a convenient location so that the |
| Ant release resides in its own directory (conventionally named |
| "apache-ant-[version]"). For the purposes of the remainder of this document, |
| the symbolic name "${ant.home}" is used to refer to the full pathname of |
| the release directory. |
| |
| * Create an ANT_HOME environment variable to point the directory |
| ${ant.home}. |
| |
| * Modify the PATH environment variable to include the directory |
| ${ant.home}/bin in its list. This makes the "ant" command line script |
| available, which will be used to actually perform the build. |
| |
| |
| (2) Checkout or obtain the source code for Tomcat 6.0 |
| |
| * Tomcat 5.5 SVN repository URL: |
| http://svn.apache.org/repos/asf/tomcat/tc5.5.x/trunk/ |
| |
| * Download a source package from: |
| http://tomcat.apache.org/download-55.cgi |
| |
| * Checkout the source using SVN, selecting a tag for released version or |
| trunk for the current development code, or unpack a source package. The |
| location where the source has been placed will be referred as |
| ${tomcat.source}. |
| |
| |
| (3) Building Tomcat 5.5 |
| |
| * This assumes that the Tomcat source is available in the directory tree starting |
| at ${tomcat.source}. |
| |
| cd ${tomcat.source}/build |
| ant download |
| ant [deploy] |
| |
| * WARNING: Running "ant download" command will download libraries required |
| to build Tomcat to the /usr/share/java directory. On a typical Linux or |
| MacOX system an ordinary user will not have access to write to this |
| directory, and, even if you do, it may not be appropriate for you to |
| write there. |
| |
| On Windows this usually corresponds to the "C:\usr\share\java" |
| directory, unless Cygwin is used. Read below to learn how to customize |
| the directory used to download the binaries. |
| |
| * NOTE: Users accessing the Internet through a proxy must use a properties |
| file to indicate to Ant the proxy configuration. Read below. |
| |
| * The build can be controlled by creating a ${tomcat.source}/build.properties |
| file, and adding the following content to it: |
| |
| # ----- Proxy setup ----- |
| # Uncomment if using a proxy server |
| #proxy.host=proxy.domain |
| #proxy.port=8080 |
| #proxy.use=on |
| |
| # ----- Default Base Path for Dependent Packages ----- |
| # Replace this path with the directory path where dependencies binaries |
| # should be downloaded |
| base.path=/home/me/some-place-to-download-to |
| |
| |
| (4) Updating sources and Rebuilds |
| |
| It is recommended that you regularly update the downloaded Tomcat 5.5 sources. |
| To do this, execute "svn update" command with your Subversion client. |
| |
| [This does not apply if you are building Tomcat from a source archive]. |
| |
| For a quick rebuild of only modified code you can use |
| |
| cd ${tomcat.source}/build |
| ant |
| |
| In addition, "ant build-depends" will build packages that |
| tomcat depends on ( commons-logging for now ), to ease fixes |
| and debugging in those packages. |
| |
| (5) Building The "compat" Package |
| |
| Tomcat 5.5 is designed to run on J2SE 5.0, but will run on |
| J2SE version 1.4 as well as long as the compatibility package |
| is placed in the server classpath. See "RUNNING.txt" in this |
| directory for running instructions. To build the compat |
| package, do |
| |
| cd ${tomcat.source}/build |
| ant compat |
| |
| (6) Building the servlet and jsp API documentation |
| |
| The documentation can be easily rebuild, do |
| cd ${tomcat.source}/build |
| ant dist-javadoc |
| |
| (7) Building a release running tests: |
| |
| Ensure that 'full.dist=on' is set in build.properties |
| and do |
| cd ${tomcat.source}/build |
| ant release |
| |
| Note that this deletes any existing build output. |
| |
| (8) Running tests |
| |
| do |
| cd ${tomcat.source}/build |
| ant clean-tester run-tester |