Step-by-step instructions for releasing a new version to Sonatype Maven Central.
Ensure the following GitHub Actions secrets are configured in the repository:
CENTRAL_USERNAME— Sonatype Central Portal usernameCENTRAL_PASSWORD— Sonatype Central Portal passwordGPG_PRIVATE_KEY— GPG private key for signing artifactsGPG_PASSPHRASE— Passphrase for the GPG key
Create a new branch from master named after the version, e.g. 1_4_0:
git checkout master
git pull origin master
git checkout -b 1_4_0Run the Maven versions plugin to update all 6 pom.xml files at once:
mvn versions:set -DnewVersion=1.4.0 -DgenerateBackupPoms=falseVerify the change looks correct:
grep -r "1.4.0" --include="pom.xml"git add -A
git commit -m "Release version 1.4.0"
git push origin 1_4_0- Go to the repository on GitHub
- Navigate to Actions → Publish to Maven Central
- Click Run workflow
- Select the release branch (e.g.
1_4_0) from the branch dropdown - Click Run workflow
Once the workflow completes successfully, Login to:
- https://central.sonatype.com/publishing (use your userid/password for Sonatype Central Portal)
You should see a deployment entry with status PUBLISHING. Wait for it to transition to PUBLISHED (usually 5–30 minutes).
After status shows PUBLISHED, confirm the artifact is available:
e.g. https://central.sonatype.com/artifact/org.jsmart/zerocode-tdd/1.4.0
https://central.sonatype.com/artifact/org.jsmart/zerocode-tdd/<VERSION>
Note: It took 10 min to publish, but may take up to 2 hours before the artifact is resolvable via standard Maven build tools.
You can see the last 3 months stats(publisher insight) here:
- https://central.sonatype.com/publishing/insights <--- use same userid/password as above
Open a Pull Request from the release branch (e.g. 1_4_0) into master on GitHub and merge it.
After merging, update master to the next development version:
git checkout master
git pull origin master
mvn versions:set -DnewVersion=1.4.1-SNAPSHOT -DgenerateBackupPoms=false
git add -A
git commit -m "Prepare next development version 1.4.1-SNAPSHOT"
git push origin masterYou can keep
1.4.0(without-SNAPSHOT) on master if you prefer not to bump yet. The snapshot bump is a best practice that signals active development is continuing toward the next release.
## Release Notes Use this button and see what it generates. This generation should fill the content with delta changes since last release.
Otherwise, use this prompt with Co-Pilot(make sure to selent the project) -> select Claude Haiku 4.5:
Create a Draft Release Note, with Delta from earlier release.
Mimic this release note "https://github.com/authorjapps/zerocode/releases/tag/1.4.1".
Give me the md(markdown) content here without rendring(to copay paste).