Home
What is Codehaus Cargo?
Cargo is a thin wrapper that allows you to manipulate various type of application containers (J2EE, Java EE, Jakarta EE and others) in a standard way. The portion Codehaus is a reference to the open source community which used to host Cargo when it was first created - We meanwhile moved to Github as Codehaus has shut down.
Cargo provides the following APIs and tools:
A Java API to start/stop/configure any of the supported containers.
A Java API to (remotely or locally) deploy modules into these containers, be it a server alone, a farm or a cluster.
A Java API to parse/create/merge J2EE, Java EE or Jakarta EE modules.
Ant tasks wrapping the Java API for configuring, starting, stopping and deploying applications to all supported containers.
A Web interface that wraps the Java API that can be used to configure, start and stop all containers supported by Cargo remotely and at any time.
A Maven 3 Plugin wrapping the Java API for configuring, starting, stopping and deploying applications to all supported containers and the Cargo Daemon as well as parsing, creating and merging J2EE, Java EE or Jakarta EE modules.
These tools and APIs can be used in a standalone fashion or via various IDEs.
Usage
Cargo is often used to deploy applications to containers from test APIs (such as JUnit), Ant or Maven builds. Cargo can install the container and dependencies needed for your deployment as well. Please find below the links to our Quick Start guides:
Development Status
Current Versions
You can click on the version number to access the Downloads page and in the status column to get release notes:
Version | Status | Comments |
|---|---|---|
Released on 3 April 2026 |
All released versions are available here.
Container Support
The below list shows the supported containers and extensions that are implemented for each container, as well as the the version of the associated Codehaus Cargo module where the feature was first made available.
Click on a container's name to see a detailed list of features it supports.
Container | Java API (version) | Ant tasks (version) | Maven 3 plugin (version) |
|---|---|---|---|
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
|
Some containers are automatically tested by the Continous Integration system every time there is a code change. For these the containers, the associated page also shows which version is used for these automated tests.