Dependencies

This version of DataNucleus has dependencies on the following software. Clearly you only require these dependencies if you are using the particular datastore, or API that they are needed for. There is a ZIP download for DataNucleus that includes many of these.

Essential Dependencies
Software Description Version Requirement

Apache JDO API

JDO API definition, provided by DataNucleus

3.2

Required if you are using the JDO API or JDO Annotations. Note that this uses our own developed JDO API, including full Apache JDO 3.2 plus some DataNucleus extensions. You can use the official Apache JDO API jar if you so wish.

JPA API

JPA API definition, provided by DataNucleus

2.2*

Required if you are using the JPA API or JPA annotations. Note that this uses our own developed JPA API including full JPA 2.2 as well as some vendor extensions. You can use the official JPA API jar if you so wish.

Datastore Dependencies (driver for your database)
Software Description Version Requirement

JDBC Driver

JDBC Driver for your chosen RDBMS

Required if you want to use an RDBMS datastore. Obtain from your RDBMS vendor

Apache POI

Apache library for writing to Microsoft documents

3.5+

Required if you want to use Excel (XLS/OOXML) documents

ODFDOM

ODF Toolkit for Java

0.8.7

Required if you want to use an ODF document for persistence.

Apache HBase

hbase-client

1.1+

Required if you want to persist to HBase datastores

MongoDB Java driver

MongoDB Java driver

3.1+

Required if you want to persist to MongoDB datastores.

Cassandra Datastax Java driver

Cassandra Datastax driver

3.0

Required if you want to persist to Cassandra datastores. May work on later releases but not tested by us.

Neo4j driver

Neo4j driver

2.3+

Required if you want to persist to Neo4j datastores. Tested against v3.0/v3.1 also.

jaxb-api

JAXB API

2.1

Required if you are using an XML datastore

jaxb-impl

JAXB Reference Implementation

2.x

Required if you are using an XML datastore

Feature Dependencies (optional depending on what you want to use)
Software Description Version Requirement

Log4j

Log4J logging library.

1.2+

Required if you wish to log using Log4J. DataNucleus supports Log4J or JRE logging

VividSolutions JTS

JTS

1.12

Required if you want to persist JTS geospatial types

JodaTime

JodaTime

2.0+

Required if you want to persist JodaTime java types

Google Guava

Google Guava

1.0

Required if you want to persist Google Guava java types

Google Collections

GoogleCollections

1.0

Required if you want to use BoneCP connection pool for RDBMS

EHCache

EHCache caching product

1.0+

Required if you want to use EHCache for level 2 caching

OSCache

OSCache caching product

2.1

Required if you want to use OSCache for level 2 caching

C3P0

C3P0 RDBMS connection pooling library

0.9.0+

Required if you are using an RDBMS datastore and want to use C3P0 for connection pooling

bonecp

BoneCP RDBMS connection pooling library

0.6.5

Required if you are using an RDBMS datastore and want to use BoneCP for connection pooling

SLF4J

SLF4J logging library

1.5.6

Required if you are using BoneCP for connection pooling

sdoapi

Oracle Spatial library

11.2+

Required if you want to persist Oracle geospatial types

mx4j

MX4J management library

3.0+

Required if you want to use JMX with DataNucleus via MX4J

mx4j-tools

MX4J tools

1.2+

Required if you want to use JMX with DataNucleus via MX4J

jta

JTA transaction API

1.0+

Required if you want to use JTA transactions

cache-api

Cache API

1.0+

Required if you want to use javax.cache L2 caching

validation-api

Bean validation API

1.0+

Required if you want to use bean validation (you also require a bean validation implementation)