It’s easy to get up and running with Infinispan. All you need is Java and a dependency management and build tool such as Maven.

1. Getting starting with Infinispan

1.1. Infinispan requirements

It’s easy to get started with Infinispan. All you need is Java, dependency management tooling, and either the Infinispan server or core libraries.

1.1.1. Software Requirements

To run Infinispan, you’ll need:

  • Java 11 JDK at a minimum. Infinispan but also works with JDK 17, 18 and 19.

  • Maven 3.2 or later. Infinispan also works with Gradle and Ivy.

1.1.2. JDK

Choose your Java runtime and follow their installation instructions. For example, you could choose:

1.1.3. Maven

Run mvn --version to check your current Maven version. If you have Maven 3.2 or later, you are ready to go.

If you need to install Maven, visit https://maven.apache.org/install.html.

1.1.4. Getting Infinispan

You can:

  • Download the Infinispan Server distribution. Visit the Download Infinispan page to get the latest stable release.

  • Pull the Infinispan image.

  • Add the infinispan-core artifact to your pom.xml and use Infinispan directly in your project.

1.1.5. Infinispan simple tutorials

See different capabilities in action with just a few simple steps. Clone the repository:

git clone git@github.com:infinispan/infinispan-simple-tutorials.git

1.2. Generating projects from Maven archetypes

Infinispan provides a set of Maven archetypes that you can use to generate skeleton projects with sample code and pom.xml files. You can then import these projects into your IDE and start building and running applications with Infinispan capabilities.

Prerequisites
Procedure
  1. Open a terminal window in the directory where you want to create project files.

  2. Generate projects from Infinispan archetypes with the following command:

    mvn archetype:generate -DarchetypeGroupId=org.infinispan.archetypes \
      -DarchetypeArtifactId=<archetype-name> \ (1)
      -DarchetypeVersion=<infinispan-version> (2)
    1 Creates projects from one of the following archetypes:
    • client Creates a sample Hot Rod Java client application.

    • embedded Creates a sample application that embeds Infinispan.

    • store Creates a sample implementation of a custom cache store.

    • server-task Creates a sample implementation of a ServerTask.

    2 Specifies the Infinispan version to use, for example:

    -DarchetypeVersion=14.0.3.Final

  3. When prompted, define artifactId, groupId, and version values for your project.

  4. Import your new Infinispan project into your IDE.

  5. Run your project application from the directory where the pom.xml file resides as follows:

    mvn package exec:java

    The store and server-task archetype does not include a project application, Application.java, that you can run.