https://github.com/coherence-community/coherence-spring
Coherence Spring Project
https://github.com/coherence-community/coherence-spring
coherence java spring spring-boot
Last synced: about 1 year ago
JSON representation
Coherence Spring Project
- Host: GitHub
- URL: https://github.com/coherence-community/coherence-spring
- Owner: coherence-community
- License: upl-1.0
- Created: 2013-03-05T19:46:48.000Z (over 13 years ago)
- Default Branch: main
- Last Pushed: 2025-03-20T05:33:20.000Z (over 1 year ago)
- Last Synced: 2025-03-20T08:45:28.526Z (over 1 year ago)
- Topics: coherence, java, spring, spring-boot
- Language: Java
- Homepage: https://spring.coherence.community/
- Size: 674 MB
- Stars: 30
- Watchers: 13
- Forks: 22
- Open Issues: 1
-
Metadata Files:
- Readme: README.adoc
- Contributing: CONTRIBUTING.md
- License: LICENSE.txt
- Security: SECURITY.md
Awesome Lists containing this project
README
:main-release-version: 4.3.0
:main-snapshot-version: 4.3.1-SNAPSHOT
:website: https://spring.coherence.community/
:3x-release-version: 3.4.0
:3x-snapshot-version: 3.4.1-SNAPSHOT
= Welcome to the Oracle Coherence Spring Project
image:https://github.com/coherence-community/coherence-spring/actions/workflows/maven.yml/badge.svg?branch=main[CI Coherence Spring,link=https://github.com/coherence-community/coherence-spring/actions]
image:https://sonarcloud.io/api/project_badges/measure?project=coherence-community_coherence-spring&metric=alert_status[Quality Gate Status,link=https://sonarcloud.io/summary/new_code?id=coherence-community_coherence-spring]
image:https://img.shields.io/badge/Coherence-Join%20Slack-brightgreen[Chat with us on slack,link=https://join.slack.com/t/oraclecoherence/shared_invite/zt-9ufv220y-Leudk0o5ntgNV0xraa8DNw]
image:https://img.shields.io/stackexchange/stackoverflow/t/oracle-coherence?label=%20StackOverflow%20%7C%20oracle-coherence[Stack Exchange questions,link=https://stackoverflow.com/questions/tagged/oracle-coherence]
image:https://img.shields.io/twitter/follow/OracleCoherence?style=social[Twitter Follow,link=https://twitter.com/OracleCoherence]
The *Coherence Spring* project provides bootstrapping support of https://coherence.community/[Oracle Coherence] for
https://spring.io/projects/spring-framework[Spring Framework] and https://spring.io/projects/spring-boot[Spring Boot].
Coherence Spring also provides a set of components to aid in the integration of Oracle Coherence and various other projects of the Spring ecosystem:
- Spring Data
- Spring's Cache Abstraction
- Spring Session
Furthermore, the project also provides various examples to show-case the integration of Oracle Coherence into Spring-based
projects.
== Documentation
Detailed project documentation is available on the Coherence Spring website. This includes the reference documentation in various formats (Multi-page/Single-page HTML, PDF), as well as extensive JavaDoc for the Coherence Spring source code.
[width="75%"]
|=======
|*{main-release-version}* | {website}{main-release-version}[Website] |{website}{main-release-version}/refdocs/reference/html/index.html[Multi-page HTML] |{website}{main-release-version}/refdocs/reference/htmlsingle/index.html[Single-page HTML] | {website}{main-release-version}/refdocs/reference/pdf/coherence-spring-reference.pdf[PDF] | {website}{main-release-version}/refdocs/api/index.html[API Doc.]
|*{main-snapshot-version}* | {website}{main-snapshot-version}[Website]|{website}{main-snapshot-version}/refdocs/reference/html/index.html[Multi-page HTML] |{website}{main-snapshot-version}/refdocs/reference/htmlsingle/index.html[Single-page HTML] | {website}{main-snapshot-version}/refdocs/reference/pdf/coherence-spring-reference.pdf[PDF] | {website}{main-snapshot-version}/refdocs/api/index.html[API Doc.]
|*{3x-release-version}* | {website}{3x-release-version}[Website] |{website}{3x-release-version}/refdocs/reference/html/index.html[Multi-page HTML] |{website}{3x-release-version}/refdocs/reference/htmlsingle/index.html[Single-page HTML] | {website}{3x-release-version}/refdocs/reference/pdf/coherence-spring-reference.pdf[PDF] | {website}{3x-release-version}/refdocs/api/index.html[API Doc.]
|*{3x-snapshot-version}* | {website}{3x-snapshot-version}[Website] |{website}{3x-snapshot-version}/refdocs/reference/html/index.html[Multi-page HTML] |{website}{3x-snapshot-version}/refdocs/reference/htmlsingle/index.html[Single-page HTML] | {website}{3x-snapshot-version}/refdocs/reference/pdf/coherence-spring-reference.pdf[PDF] | {website}{3x-snapshot-version}/refdocs/api/index.html[API Doc.]
|=======
NOTE: The http://maven.apache.org[Apache Maven]-based snapshots and releases for this project are published to
http://repo1.maven.org/maven2/com/oracle/coherence/spring/[Maven Central].
== Supported Versions
[width="75%", cols="1,1,1,1,1,1,^1,1"]
|===
|Coherence Spring | Java | Coherence CE | Commercial Edition^*^ | Spring| Boot | Jakarta | Git Branch/Tag
|*4.x* | `17`, `21` | `24.09` | N/A | `6.x` | `3.3.x` | ✔ | `main`
|*3.x* | `11`, `17`, `21`| `22.06` | `14.1.2`, `14.1.1.2206` | `5.x` | `2.x` | | `3.x`
|===
NOTE: Currently, there is no commercial edition of Coherence that is compatible with Coherence Spring `4.x`,
as the commercial edition still depends on the `javax` namespace, while Coherence Spring 4.x and Spring 6.x
only support the `jakarta` namespace. Once a commercial edition that supports jakarta namespace is published,
it will be supported by the Coherence Spring project. Commercial editions compatible with Coherence Spring `3.x` are
Coherence `14.1.1.2206` and `14.1.2`.
== Quick Start
In order to get started quickly, please read the reference guide as it provides a detailed
https://spring.coherence.community/{main-release-version}/refdocs/reference/htmlsingle/index.html#quickstart[Quickstart chapter] (v{main-release-version}).
Through the reference documentation we will also refer to various demo and sample applications. Those are part of this
repository, and you can find those in the
https://github.com/coherence-community/coherence-spring/tree/main/samples[samples] module.
== Building from Source
=== Requirements
In order to build Coherence Spring, you need to have installed:
- https://www.oracle.com/java/technologies/downloads/#java17[Java 17] (Java 21 is fine)
- https://help.github.com/set-up-git-redirect[Git]
=== Check out sources
Check out the project using https://git-scm.com/[Git]:
[source,bash,indent=0]
----
git clone https://github.com/coherence-community/coherence-spring.git
cd coherence-spring
----
Coherence Spring uses https://maven.apache.org/[Apache Maven] as build tool. You do not need to have Maven installed to
build the project. Simply use the provided https://github.com/takari/maven-wrapper[Maven Wrapper], e.g.:
- *Windows:* `mvnw.cmd clean package`
- *Linux/Mac:* `./mvnw clean package`
=== Build the entire project
Build the entire project using https://maven.apache.org/[Maven]:
[source,bash]
----
./mvnw clean package
----
==== Offline Builds
In case you are offline and you run into issues building the project, e.g.
the Coherence cluster as part of JUnit tests does not start up successfully, then
you may have to provide additional command line arguments:
[source,bash]
----
./mvnw clean package -DargLine="-Dcoherence.localhost=127.0.0.1 -Djava.net.preferIPv4Stack=true"
----
=== Build the Documentation
[source,bash]
----
./mvnw clean package -pl coherence-spring-docs
----
=== Build the project website
[source,bash]
----
./mvnw clean install -pl coherence-spring-site
----
=== Deploy the project website
[source,bash]
----
./mvnw deploy -pl coherence-spring-site
----
== Getting Support
In case you have questions or if you run into issue using the Coherence Spring project, please feel free to reach out to
us either via:
- https://stackoverflow.com/tags/oracle-coherence[Stackoverflow] using the _oracle-coherence_ tag
- https://join.slack.com/t/oraclecoherence/shared_invite/zt-9ufv220y-Leudk0o5ntgNV0xraa8DNw[Slack]
Both support channels are monitored by the project community.
== Contributing
We would love to review your https://help.github.com/articles/creating-a-pull-request[Pull requests]. Please see the
link:CONTRIBUTING.md[contributor guidelines] for details.
== License
Coherence Spring is Open Source software released under link:LICENSE.txt[The Universal Permissive License] (UPL), Version 1.0.