Mission
Cargo is a thin wrapper that allows you to manipulate Java EE containers in a standard way.
Tools
Cargo provides the following Tools and APIs:
- A Java API to start/stop/configure Java Containers and deploy modules into them.
- A Java API to parse/create/merge Java EE Modules
- Ant tasks and Maven 2/Maven 3 plugins.
- Intellij IDEA and Netbeans plugins are in the sandbox.
Usage
Cargo is often used to deploy applications to containers from ant or maven builds. Cargo can install the container and dependencies needed for your deployment as well. Click here for a Maven 2 quick start!
For more use cases, please check the utilisation page.
Development Status
Current Versions
click in the status column to get release notes:
Version |
Status |
Comments |
|---|---|---|
Released on 06/08/2011 |
All released versions are available here.
Container Support
List of supported containers and the extensions that are implemented for each container (Java API, Ant tasks and Maven2/Maven3 plugin). The specified version is the version of the associated Cargo module where the feature was first made available (for example 0.2 for the Maven2 plugin means version 0.2 of the Cargo Maven 2 extension release). Click on a container's name to see a detailed list of features it supports.Container | Java API (version) | Ant tasks (version) | Maven 2 plugin (version) |
|---|---|---|---|
|
|
| |
|
|
| |
| Geronimo 3.x | 1.2.4 | 1.2.4 | 1.2.4 |
|
|
| |
|
|
| |
| Glassfish 4.x | 1.4.0 | 1.4.0 | 1.4.0 |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
| Resin 3.1.x | 1.2.0 | 1.2.0 | 1.2.0 |
| Resin 4.x | 1.4.0 | 1.4.0 | 1.4.0 |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
|
|
| |
| WebLogic 12.x | 1.2.4 | 1.2.4 | 1.2.4 |
| WebSphere 8.5.x | 1.3.0 | 1.3.0 | 1.3.0 |
Some containers are tested dialy on the Codehaus Cargo Continous Integration System; for these the container's page also shows which version is tested.
News
Almost two months after CARGO 1.3.3, we've gone a long way through CARGO 1.4.0. Major enhancements, changes and bug fixes include:
- Core:
- [CARGO-365] - CARGO should check status of application server before attempting to start container
- [CARGO-1068] - Add support for port offset for containers
- Containers - Glassfish:
- [CARGO-1189] - Glassfish
jvm-optionsshould not be quoted - [CARGO-1190] - Glassfish
<systemProperties>should be XML-encoded when added to domain.xml - [CARGO-1191] - Add support for Glassfish 4.x
- Containers - Resin:
- Daemon:
- [CARGO-1188] - Add
-nologgingoption to disable logging for standalone daemon war - [CARGO-1180] - Add support for continuously viewing logs
- [CARGO-1181] - Add support for restarting offline containers
- [CARGO-1182 and CARGO-1184] - Change the Daemon properties in the Maven2/Maven3 plugin configuration to have a proper configuration
- [CARGO-1187] - Daemon
start/stopmojos does not have dependency resolution - [CARGO-1185] - Add support for extra and shared classpaths
- [CARGO-1186] - Add support for adding classpath locations at verbatim
- [CARGO-1183] - Fix integration test Cargo Daemon Integration Tests - Browser
- [CARGO-1192] - Daemon doesn't work if the Maven2/Maven3 client and Daemon server run different OSes
- Extensions - ANT tasks:
- [CARGO-991] - Remove the
starttask'swaitargument - Extensions - Maven2/Maven3 plugin:
- [CARGO-1116] - Remove the deprecated
<deployable>elements under<deployer>and<configuration> - [CARGO-967] - Use the tested container downloadable as the default for the
ZipUrlInstaller - [CARGO-986] - Remove
cargo:start'swaitargument
To upgrade to this new version:
- Users of the Maven2/Maven3 plugin simply need to use the CARGO plugin version 1.4.0.
- Users of the Java API can download the new Uberjar from http://repo1.maven.org/maven2/org/codehaus/cargo/cargo-core-uberjar/1.4.0/cargo-core-uberjar-1.4.0.jar
- Similarly, users of the ANT tasks can download the new ANT tasks from http://repo1.maven.org/maven2/org/codehaus/cargo/cargo-ant/1.4.0/cargo-ant-1.4.0.jar
- Finally, the ones who want to use the Cargo Daemon can download the webapp from http://repo1.maven.org/maven2/org/codehaus/cargo/cargo-daemon-webapp/1.4.0/cargo-daemon-webapp-1.4.0.war
wait argument. If you want the container to start and keep on running, please use run instead of start.<deployable> elements under <deployer> and <configuration>. All <deployable> elements are now under the main <configuration> element.Enjoy!
Dear CARGO enthusiasts
CARGO 1.3.3 is here! This new version features the below fixes and improvements:
- Containers - General
- The configuration files option now overrides all existing files (CARGO-1176)
- Containers - Glassfish
- Glassfish deployment does not fail anymore on Windows when context is
/(CARGO-1179)
- Glassfish deployment does not fail anymore on Windows when context is
- Containers - JBoss
- Support for the
appendparameter has been added to the JBoss logger configuration (CARGO-825) - JBoss 7.x and 7.1.x now support
JBossPropertySet.CONFIGURATION(CARGO-1174)
- Support for the
- Containers - JOnAS
- JOnAS 5.x remote deployer can now properly undeploy when
jonas.developmentistrue(CARGO-1177) - JOnAS 5.x remote deployer's issues with undeployment in Windows have been fixed (CARGO-1178)
- JOnAS 5.x remote deployer can now properly undeploy when
- Containers - Tomcat
- The Tomcat 7.x remote container now supports contexts with versions (CARGO-1172)
- Containers - WebLogic
- Support for the property
ServletPropertySet.USERShas been added to WebLogic (CARGO-1170)
- Support for the property
- Containers - WebSphere
- Support for the property
ServletPropertySet.USERShas been added to WebSphere (CARGO-91)
- Support for the property
- Core - WAR merger
- Upgrade to Servlet Spec 2.4 doesn't break
web.xmlmerging capabilities forNodeMergestrategy anymore (CARGO-1175)
- Upgrade to Servlet Spec 2.4 doesn't break
- Extensions - ANT tasks
- The
fileattribute of thedeployableelement is now optional when undeploying (CARGO-1173)
- The
To upgrade to this new version:
- Users of the Maven2/Maven3 plugin simply need to use the CARGO plugin version 1.3.3.
- Users of the Java API can download the new Uberjar from http://repo1.maven.org/maven2/org/codehaus/cargo/cargo-core-uberjar/1.3.3/cargo-core-uberjar-1.3.3.jar
- Similarly, users of the ANT tasks can download the new ANT tasks from http://repo1.maven.org/maven2/org/codehaus/cargo/cargo-ant/1.3.3/cargo-ant-1.3.3.jar
- Finally, the ones who want to use the Cargo Daemon can download the webapp from http://repo1.maven.org/maven2/org/codehaus/cargo/cargo-daemon-webapp/1.3.3/cargo-daemon-webapp-1.3.3.war
Enjoy!