# Obtaining Hibernate

## Release Bundle Downloads

The Hibernate team provides release bundles hosted on the SourceForge File Release System, in `ZIP` and `TGZ` formats. Each release bundle contains`JARs`, documentation, source code, and other goodness.

You can download releases of Hibernate, in your chosen format, from the list at .

- The `lib/required/` directory contains all the JARs Hibernate requires. All the jars in this directory must also be included in your project's classpath.

- The `/lib/jpa/` directory contains the hibernate-entitymanager jar and its dependencies beyond those in `lib/required/`. This defines Hibernate support for JPA.

- The `lib/envers` directory contains the hibernate-envers jar and its dependencies beyond those in `lib/required/`

- The `lib/optional` directory contains the jars needed for optional features of Hibernate.

## Maven Repository Artifacts

The authoritative repository for Hibernate artifacts is the JBoss Maven repository. The team responsible for the JBoss Maven repository maintains a number of Wiki pages that contain important information.

Maven Repository Wiki Pages

- - General information about the repository.

- - Information about setting up the JBoss repositories in order to do development work on JBoss projects themselves.

- - Information about setting up access to the repository to use JBoss projects as part of your own software.

Hibernate produces a number of artifacts (all under the org.hibernate groupId):

Hibernate Artifacts under groupId org.hibernate

hibernate-core

  The main artifact, needed to build applications using the native Hibernate APIs including defining metadata in both annotations as well as Hibernate's own `hbm.xml` format.

hibernate-entitymanager

  Represents Hibernate's implementation of JPA, as specified at .

  This artifact depends on hibernate-core

hibernate-envers

  An optional module that provides historical auditing of changes to your entities.

  This artifact depends on both hibernate-core and hibernate-entitymanager.

hibernate-c3p0

  Provides integration between Hibernate and the C3P0 connection pool library. See for information about C3P0.

  This artifact depends on hibernate-core, but is generally included in a project as a runtime dependency. It pulls in the C3P0 dependencies automatically.

hibernate-proxool

  Provides integration between Hibernate and the Proxool connection pool library. See for more information about this library.

  This artifact depends on hibernate-core, but is generally included in a project as a runtime dependency. It pulls in the Proxool dependencies automatically..

hibernate-ehcache

  Privides integration between Hibernate and EhCache, as a second-level cache. See for more information aboutEhCache.

  This artifact depends on hibernate-core, but is generally included in a project as a runtime dependency. It pulls in the Ehcache dependencies automatically.

hibernate-infinispan

  Provides integration between Hibernate and Infinispan, as a second-level cache. See for more information about Infinispan.

  This artifact depends on hibernate-core, but is generally included in a project as a runtime dependency. It pulls in the Infinispan dependencies automatically.