Skip to content
Andrey Yegorov edited this page Feb 20, 2026 · 5 revisions

Developer resources

Release process

In order to cut a release please follow these guidelines:

  • ensure that tests are passing: mvn clean install
  • when you run the build the code is auto formatted, please verify with 'git status' that after the build no file is changed, otherwise commit the formatted code
  • ensure to have Maven OSSRH credentials configured on your settings.xml file (https://central.sonatype.com/usertoken to get the credentials)
  • ensure you have properly configured a GPG private key, for git and for Maven

Commands:

Create a signed tag and update project version:

mvn release:prepare -Prelease -Dresume=false -DautoVersionSubmodules -Darguments=-DskipTests -DgenerateBackupPoms=false

Stage the release to Maven Central (OSSRH) repository:

mvn release:perform -DreleaseProfiles=release -Darguments=-DskipTests -Prelease

  • this command MUST be executed right after "release:prepare", on the same directory, because it uses temporary files created but the previous command
  • you will be prompted for your GPG password

Finalize the release:

  • Login to https://central.sonatype.com/publishing
  • Look for the deployment (in the "Publish" section)
  • conform the list of the artifacts matches the expectations
  • once deployment is in "validated" state it is safe to publish
  • Click "Publish"
  • deployment will switch to "publishing" state and it may take well over an hour to publish in some cases

Clone this wiki locally