## Installation

In order to use Tomcat for developing web applications, you must first install it (and the software it depends on). The required steps are outlined in the following subsections.

#### JDK

Tomcat 9.0 was designed to run on Java SE 8 or later.

Compatible JDKs for many platforms (or links to where they can be found) are available at http://www.oracle.com/technetwork/java/javase/downloads/index.html.

#### Tomcat

Binary downloads of the Tomcat server are available from https://tomcat.apache.org/. This manual assumes you are using the most recent release of Tomcat 9. Detailed instructions for downloading and installing Tomcat are available here.

In the remainder of this manual, example shell scripts assume that you have set an environment variable `CATALINA_HOME` that contains the pathname to the directory in which Tomcat has been installed. Optionally, if Tomcat has been configured for multiple instances, each instance will have its own `CATALINA_BASE` configured.

#### Ant

Binary downloads of the Ant build tool are available from https://ant.apache.org/. This manual assumes you are using Ant 1.8 or later. The instructions may also be compatible with other versions, but this has not been tested.

Download and install Ant. Then, add the `bin` directory of the Ant distribution to your `PATH` environment variable, following the standard practices for your operating system platform. Once you have done this, you will be able to execute the `ant` shell command directly.

#### Source Code Control

Besides the required tools described above, you are strongly encouraged to download and install a source code control system, such as Git, Subversion, CVS or one of the many alternatives. You will need appropriate client tools to check out source code files, and check in modified versions and, depending on the tool and hosting option you choose, you may need to obtain and install server software or sign up for an account with a cloud provider.

Detailed instructions for installing and using source code control applications is beyond the scope of this manual.