-
Notifications
You must be signed in to change notification settings - Fork 22
Release Process
Gunnar Hillert edited this page Dec 4, 2024
·
5 revisions
Coherence Spring uses the Nexus Staging Maven Plugin to deploy releases to Maven Central:
-
Java 17
-
[GnuPG](https://gnupg.org/)
-
Account with https://oss.sonatype.org/
-
You need a GnuPG key for signing the artifacts
-
Your GnuPG key meeds to be available via http://keyserver.ubuntu.com/
Make sure your settings.xml
is setup for GitHub and Sonatype access, e.g.:
<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>github</id>
<password>your-access-key</password>
</server>
<server>
<id>github-pages</id>
<password>your-access-key</password>
</server>
<server>
<id>sonatype</id>
<username>username</username>
<password>password</password>
</server>
</settings>
If you need to create or renew your signing keys, please see: https://central.sonatype.org/publish/requirements/gpg/
Dry-run:
./mvn release:prepare -DdryRun=true -Darguments="-Dskip-sign-artifacts=false -Psign"
Do the actual release:
-
./mvnw release:prepare -Darguments="-Dskip-sign-artifacts=false -Psign"
-
./mvnw release:perform -Darguments="-Dskip-sign-artifacts=false -Psign"
If you see an error such as:
gpg: signing failed: Inappropriate ioctl for device”
This may help:
export GPG_TTY=$(tty)