| Requirement | Value |
|---|---|
| Server | Paper 26.2 |
| Java runtime | Java 25 or newer compatible runtime |
| Build target | Java 25 bytecode |
| Compile API | Paper API 26.2.build.29-alpha |
| Plugin API version | 26.2 |
| Optional dependency | PlaceholderAPI 2.12.3-DEV-266 or compatible build |
- Stop the Paper server.
- Back up
plugins/X-Masand relevant world folders. - Remove old XMas Tree jars from the top-level
pluginsfolder. - Copy the current jar into
plugins. - Start the server.
- Check console for startup warnings.
- Run
/xmastree,/xmastree info, and/xmastree debug diagnostics.
Current jar name:
1MB-XMas-2026-v2.1.0-051-v25-26.2.jar
Preserve:
plugins/X-Mas/trees.ymlplugins/X-Mas/config.ymlplugins/X-Mas/progress.yml, if an active event already has progressplugins/X-Mas/translations/locale_en.yml, if custom text was edited
Before testing live data:
/xmastree data backup all
/xmastree data validate
/xmastree debug diagnostics
If saved world names changed between old and new servers, configure migration.world-aliases or use /xmastree data migrate-world.
Requirements:
- JDK 25
- Gradle
- Shared Paper 26.2 cache at
../servers/cache/Paper-26.2 - PlaceholderAPI build
266in the centralized Paper 26.2 cache
Set CODEX_SHARED_SERVERS_ROOT to use a shared servers directory somewhere other than the default sibling ../servers directory.
Build and copy the release jar into libs/:
gradle clean buildAllJarsBuild only the jar:
gradle jarPrint build metadata:
gradle printBuildConfigOptional deprecated API lint pass:
gradle clean compileJava -PlintDeprecatedApi=trueEnd users do not need a local servers/ folder. Local test server folders are ignored development data.
Report bugs and upgrade issues here: