Skip to content

Building and Releasing

Dan Alexander edited this page Nov 3, 2026 · 1 revision

Building and releasing

Maintainer reference for source builds, version policy and release automation. Use the already published v1.0.0 assets for normal installation.

Documentation for VoxelCore v1.0.0. Home · Installation · Compatibility

Build

Building the complete reactor requires JDK 25 because the Minecraft 26.3/Paper module targets Java 25. Older distribution modules still emit bytecode for their own required Java level.

Build every distribution:

mvn -U clean package

Or one family and its dependencies:

mvn -pl voxelcore-v1_21_4 -am clean package

Versioning and release maintenance

  • Use semantic versions (1.0.1 for compatible bug fixes; 1.1.0 for compatible additions; 2.0.0 for breaking changes). Minecraft server families are identified by distribution JAR filenames, not the plugin version.
  • Normal branch and pull-request CI generates test artifacts; it does not publish a release automatically.
  • For a new release, review the version, dependencies, tests, changelog and server compatibility before creating a protected, signed vX.Y.Z tag on the reviewed commit.
  • The owner-authorized release workflow prepares a draft from that tag. Verify all distribution JARs and SHA256SUMS, approve the build and manually publish it. Never replace an already published asset under the same version.
  • The repository's discord-release.yml is triggered by release publication, not by tag creation or editing drafts. Avoid duplicate announcement webhooks; do not disclose secrets or tokens in documentation.

The existing VoxelCore v1.0.0 release is final. These instructions apply to future versions, not to recreating v1.0.0.

Clone this wiki locally