# Installing the Deployment Framework

This page provides instructions on how to install the Caplin Deployment Framework, which you can then use to deploy Liberator, Transformer, and integration adapters.

## Requirements

The Deployment Framework 7 has the following requirements.

### Bash shell

The Deployment Framework requires a Bash environment with the following specifications:

• Bash 4.1+

• `zip` command

• `unzip` command

### Operating system

The Deployment Framework is tested on the following operating systems:

### Java runtime environment

If your deployment includes Java DataSources, Java DataSource-modules, or uses JMX monitoring, then your deployment requires a compatible Java runtime environment (JRE).

For information on JRE compatibility, see Caplin Platform System Requirements.

For guidance on installing a JRE on RHEL, Windows, and macOS, see Installing Java.

## Installing the Deployment Framework

Follow the steps below to install the Deployment Framework:

1. Open a Bash terminal. On Windows, open a Cygwin terminal or a Git Bash terminal.

2. Copy the Deployment Framework installation kit (`DeploymentFramework-<version>.zip`) to the directory you want to install to.

 On Microsoft Windows, to avoid exceeding the Win32 API’s maximum path length of 259 characters, install to a directory with a path of no more than 20 characters in length.
3. Use the `unzip` command to extract the Deployment Framework installation kit:

RHEL and macOS
``$unzip -qoa DeploymentFramework-<version>.zip`` Git Bash ``$ MSYS=winsymlinks:lnk unzip -qoa DeploymentFramework-<version>.zip``
Cygwin
``$CYGWIN=winsymlinks:lnk unzip -qoa DeploymentFramework-<version>.zip``  On Windows, always extract the Deployment Framework using the appropriate Cygwin or Git Bash command above. The `unzip` command preserves symlinks in the Deployment Framework installation kit and the `MSYS=winsymlinks:lnk` and `CYGWIN=winsymlinks:lnk` environment variables ensure that the symlinks are implemented as Windows shortcuts (required by Windows builds of Liberator and Transformer). 4. Change directory to the root directory of the extracted deployment framework: ``$ cd DeploymentFramework-<version>``
5. Use the `dfw java` command to specify the full path of a JVM library that Liberator and Transformer can use to host Java modules and publish JMX monitoring data. For guidance on JRE compatibility with Caplin Platform components, see Caplin Platform System Requirements.

Example: RHEL 7 with the Red Hat OpenJDK 11
`$./dfw java "/etc/alternatives/java_sdk_11/lib/server/libjvm.so"` Example: RHEL 7 with the Red Hat OpenJDK 8 `$ ./dfw java "/etc/alternatives/java_sdk_1.8.0/jre/lib/amd64/server/libjvm.so"`

On Cygwin or Git Bash, specify a Windows file path, not a Bash file path. You can use backslashes (`\`) or forward slashes (`/`) as directory separators.

Example: Windows with the AdoptOpenJDK 11.0.10.9
`\$ ./dfw java "C:/Program Files/AdoptOpenJDK/jdk-11.0.10.9-hotspot/bin/server/jvm.dll"`
6. [optional] Enable Bash auto-completion for the `dfw` command. See Setting up dfw command completion.

 This step sets an environment variable that is required for the correct operation of the `logcat` command