Background
The maven-release-plugin was bumped to 3.3.1 (released end of May 2026), which broke the GitHub release flow with the following error:
Failed to execute goal org.apache.maven.plugins:maven-release-plugin:3.3.1:perform (default-cli)
on project java-driver-parent: Cannot perform release - the preparation step was stopped mid-way.
Please re-run release:prepare to continue, or perform the release from an SCM tag.
The build environment uses Maven 3.9.16.
Root Cause
The pom.xml pins a dependency on maven-scm-provider-gitexe:1.9.5:
<dependency>
<groupId>org.apache.maven.scm</groupId>
<artifactId>maven-scm-provider-gitexe</artifactId>
<version>1.9.5</version>
</dependency>
maven-scm-provider-gitexe 1.9.5 implements the SCM 1.x API. Starting with maven-release-plugin 3.x, the plugin internally uses the SCM 2.x API. This mismatch causes the release lifecycle to fail mid-prepare, leaving the build in a broken state that blocks release:perform.
Current State
As a short-term workaround, maven-release-plugin has been reverted to 2.5.3 (the last known-good version, compatible with maven-scm-provider-gitexe:1.9.5). See PR #936.
Resolution Path
To properly upgrade to 3.x, both artifacts must be upgraded together:
- Upgrade
maven-scm-provider-gitexe to a 2.x release (e.g. 2.1.0) — this aligns with the SCM 2.x API required by plugin 3.x.
- Upgrade
maven-release-plugin to the desired 3.x version (avoid 3.3.1 until its stability on Maven 3.9.x is confirmed; 3.0.1 or 3.1.x are reasonable starting points).
- Validate the full
release:prepare → release:perform cycle on Maven 3.9.x in CI before merging.
Notes
- No urgency — the 2.5.3 workaround restores release functionality.
- The upgrade should be done as a coordinated change, not a plugin-only bump.
Background
The
maven-release-pluginwas bumped to 3.3.1 (released end of May 2026), which broke the GitHub release flow with the following error:The build environment uses Maven 3.9.16.
Root Cause
The
pom.xmlpins a dependency onmaven-scm-provider-gitexe:1.9.5:maven-scm-provider-gitexe1.9.5 implements the SCM 1.x API. Starting withmaven-release-plugin3.x, the plugin internally uses the SCM 2.x API. This mismatch causes the release lifecycle to fail mid-prepare, leaving the build in a broken state that blocksrelease:perform.Current State
As a short-term workaround,
maven-release-pluginhas been reverted to 2.5.3 (the last known-good version, compatible withmaven-scm-provider-gitexe:1.9.5). See PR #936.Resolution Path
To properly upgrade to 3.x, both artifacts must be upgraded together:
maven-scm-provider-gitexeto a 2.x release (e.g.2.1.0) — this aligns with the SCM 2.x API required by plugin 3.x.maven-release-pluginto the desired 3.x version (avoid 3.3.1 until its stability on Maven 3.9.x is confirmed; 3.0.1 or 3.1.x are reasonable starting points).release:prepare→release:performcycle on Maven 3.9.x in CI before merging.Notes