Cayenne User Documentation
JAR Files and Dependencies

This sections explains where all the relevant jar files are located. It also lists Cayenne dependencies.

### Cayenne Runtime Framework

The following runtime jars are included in Cayenne distribution `"lib"` directory:

- `cayenne-server-x.x.jar` - contains full Cayenne runtime WITHOUT dependencies. Most applications will use only this file.

- `cayenne-client-x.x.jar` - a subset of cayenne-server.jar trimmed for use on the client in an ROP application.
- `cayenne-agent-x.x.jar` - a Java instrumentation agent that is used to enhance POJO persistent classes.
- `cayenne-modeler-x.x.jar` - CayenneModeler runtime library. Most applications won't ever use it. It is only needed for the local JNDI hack.

When using `cayenne-server-x.x.jar` you'll need a few third party jars (all included in `"lib/third-party"` directory of the distribution):

- ObjectStyle Ashwood Graph Library, version 2.0
- Apache Velocity Template Engine, version 1.3 (and all its dependencies bundled with velocity-dep)
- Apache Commons Collections, version 3.1
- Apache Commons Logging, version 1.1

ROP client dependencies are explained here.

### Optional Runtime Dependencies

One or more of the following libraries may be needed depending on how you use Cayenne:

- Apache Ant, version 1.6 or newer. Needed for Cayenne Ant Tasks.
- Apache Commons Pool, version 1.2 and Apache Commons DBCP, version 1.2.1. Needed if you use DBCPDataSourceFactory for one of the DataNodes.
- JGroups, version 2.2.7 or newer. Needed if you plan to use remote notifications via JGroups transport.
- Java Messaging Service (JMS). Needed if you plan to use remote notifications via JMS transport.
- Foundry Logic VPP Library, version 2.2.1. Needed for advanced class generation options with Ant.

.
Copyright ©2001-2008 Apache Software Foundation