Use camunda bom for maven Dependency Management

  • Blog
  • >
  • Use camunda bom for maven Dependency Management
Sometimes you need to include multiple camunda BPM maven dependencies in your project. The apache maven best practice  is to use a bom (“Bill of Materials“) which ensures that you get the matching versions for multiple dependencies. For camunda bpm we prepared the camunda-bom  

First, import the camunda-bom in the dependencyManagement section of your maven pom:

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.camunda.bpm</groupId>
        <artifactId>camunda-bom</artifactId>
        <type>pom</type>
        <scope>import</scope>
        <version>7.1.0-Final</version>
      </dependency>
    </dependencies>
  </dependencyManagement>

Now you can reference multiple camunda dependencies without adding their version information:

  <dependencies>
  
    <dependency>
      <groupId>org.camunda.bpm</groupId>
      <artifactId>camunda-engine</artifactId>
    </dependency>


    <dependency>
      <groupId>org.camunda.bpm</groupId>
      <artifactId>camunda-engine-spring</artifactId>
    </dependency>
    
    ...

What’s more: we also give you the versions for the the required dependencies of camunda engine. This way you will always get the version of mybatis, joda-time, java-uuid-generator that the current version of camunda-bpm was built and tested with:

<dependencies>


    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
    </dependency>


    <dependency>
      <groupId>joda-time</groupId>
      <artifactId>joda-time</artifactId>
    </dependency>


    <dependency>
      <groupId>com.fasterxml.uuid</groupId>
      <artifactId>java-uuid-generator</artifactId>
    </dependency>
    
    ...

Note that most of our maven artifacts are pushed to maven central.

Try All Features of Camunda

Related Content

Hardened images from Minimus reduce inherited vulnerabilities at the source and strengthen your container security.
Say it with us: "cocktail." c8ctl is a minimal-dependency CLI that covers your entire development lifecycle.
Ensure your Camunda 8 deployments remain secure and operational despite changes in Bitnami's container image distribution.