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

JDO API

JDO API definition, provided by DataNucleus

3.2

Required if you are using the JDO API or JDO Annotations. Since Apache JDO haven’t yet released any jar for this we provide our own milestone from the Apache JDO codebase

JPA API

JPA API definition, provided by DataNucleus

2.1.0+

Required if you are using the JPA API or JPA annotations. Note that the JPA "Expert Group" are seemingly too lazy to upload this into a freely downloadable location so you have to use this one we prepared ourselves.

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

NeoDatis

NeoDatis object database

1.9.30

Required if you are using a NeoDatis datastore

jaxb-api

JAXB API

2.1

Required is you are using an XML datastore

jaxb-impl

JAXB Reference Implementation

2.x

Required if you are using an XML datastore

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.

Xerces

Xerces XML parser

2.8+

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

Apache HBase

hbase-client

1.1+

Required if you want to persist to HBase datastores

MongoDB Java driver

MongoDB Java driver

3.x

Required if you want to persist to MongoDB datastores

Cassandra Datastax Java driver

Cassandra Datastax driver

3.x

Required if you want to persist to Cassandra datastores

Neo4j driver

Neo4j driver

2.3

Required if you want to persist to Neo4j datastores. v3.0 does work also

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

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

JodaTime

JodaTime

2.0+

Required if you want to persist JodaTime java types

javax.time

JSR Time Library

1.0+

Required if you want to persist javax.time 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

SwarmCache

SwarmCache caching product

1.0RC2

Required if you want to use SwarmCache 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

proxool

Proxool RDBMS connection pooling library

0.9.0RC3

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

commons-logging

Apache commons logging library

1.0+

Required if you are using an RDBMS datastore and want to use Proxool 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

1.2+

Required if you want to persist Oracle spatial types

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)