grounds.yaml while
testing local changes from sibling repositories.
Use this when your server runtime is in one repository and a runtime module, such as
plugin-agones:minestom, is in another repository.
Manifest modules
A Minestom server manifest declares the release defaults that every developer and CI runner can resolve.grounds.yaml
modules is CLI composition metadata. It tells grounds push which release modules can be
replaced locally. Your Gradle dependencies still define the actual runtime classpath.
Add a local module mapping
Add a local repository mapping for the Minestom variant:workspace.yaml, not in the project manifest.
Push with local modules
Use--local for selected modules:
--with-local for every enabled workspace entry that matches a modules entry:
- loads
grounds.yaml; - resolves selected local module mappings from
workspace.yaml; - writes a temporary Gradle composite-build init script;
- runs the configured
build.task, such as:examples:minigame-agones:distTar; - finds the configured
build.artifact; - normalizes the distribution tar;
- uploads the normalized distribution to Forge.
Effective source table
When local module resolution runs, the CLI prints the effective source table:Explicit dependency substitution
Gradle composite builds often substitute dependencies automatically when the local included build publishes the same module coordinates as the release dependency. When a repository needs explicit substitution, addmodule and project to the Minestom variant in
workspace.yaml:
For Minestom module substitution, the app’s Gradle distribution task builds against the included
local repository. The workspace
artifact and build fields are used for plugin artifact
overrides and are not the source of truth for the Minestom runtime classpath.Troubleshooting
The release dependency is still used
The release dependency is still used
Check
grounds workspace list and confirm the plugin-agones minestom variant is enabled. Then
run grounds push --with-local or grounds push --local plugin-agones.The selected local module is not in grounds.yaml
The selected local module is not in grounds.yaml
--local <id> must match an entry under modules. Add the module to grounds.yaml or use the
correct module ID.