Upgrading Spring Boot maven dependencies

Q&A: How Can I Upgrade Spring Boot Maven Dependencies for the Enterprise Edition?

*Camunda Platform 8, our cloud-native solution for process orchestration, launched in April 2022. Images and supporting documentation in this post may reflect an earlier version of our cloud and software solutions.


If you’ve been using the Spring Boot community edition but decided it’s time to step up to the enterprise edition, there are a few things you’ll need to do. In this blog post, we’ll walk you through each task.

Q: How Can I upgrade Spring Boot maven dependencies for the enterprise edition?

First things first, upgrade your database

A primary difference between the community edition and enterprise edition versions of Spring Boot is that there may have been some patch releases added to the enterprise edition. These occasionally require small changes to the database. If this is the case, you must find and run the scripts against the database. The community edition version can still run on the database that has been upgraded to the enterprise edition.

Next up, upgrade your Spring Boot maven dependencies

In your pom.xml file, adjust the following dependencies:

<dependency>
  <groupId>org.camunda.bpm</groupId>
  <artifactId>camunda-bom</artifactId>
  <version>7.16.0-ee</version>
  <scope>import</scope>
  <type>pom</type>
</dependency>

Notice the -ee at the end of the version tag. That’s the important bit. Moreover, you may also take this opportunity to upgrade whatever version of Spring Boot you’re using to the latest, but that’s up to you.

Additionally, update the following dependencies:

<dependencies>
    <dependency>
      <groupId>org.camunda.bpm.springboot</groupId>
      <artifactId>camunda-bpm-spring-boot-starter-rest</artifactId>
      <version>7.16.0-ee</version>
    </dependency>

    <dependency>
      <groupId>org.camunda.bpm.springboot</groupId>
      <artifactId>camunda-bpm-spring-boot-starter-webapp-ee</artifactId>
      <version>7.16.0-ee</version>
    </dependency>
  ...
</dependencies>

It’s important not to forget to change the web app reference as well when making all the changes to the pom.xml file. 

Finally, and crucially, ensure your repositories section is up to date:

<repositories>
  <repository>
    <id>camunda-bpm-nexus-ee</id>
    <name>camunda-bpm-nexus</name>
    <url>
      https://camunda.jfrog.io/artifactory/private/
    </url>
  </repository>
</repositories>

That’ll get all your dependencies up to date, but with your enterprise license, you should’ve also received a username and password to download the enterprise edition. You’ll need these credentials for your pom.xml. to access the repositories you just defined.

To achieve this, review your .m2 directory for a settings.xml file. If it’s not there, you must create it using the following structure:

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
https://maven.apache.org/xsd/settings-1.0.0.xsd">

  <servers>
    <server>
      <id>camunda-bpm-nexus-ee</id>
      <username>YOUR_USERNAME</username>
      <password>YOUR_PASSWORD</password>
    </server>
  </servers>
  <mirrors>
    <mirror>
      <id>camunda-bpm-nexus-ee</id>
      <mirrorOf>*</mirrorOf>
      <name>camunda-bpm-nexus</name>
      <url>https://camunda.jfrog.io/artifactory/private</url>
    </mirror>
  </mirrors>


</settings>

The mirrors portion may not strictly be required, but it can be helpful to have it in the file.

Ultimately

Now, when you run an mvn clean install, your project will pull the dependencies from the EE version and build your application properly.