- Conventions and Terminology
- Development Tools
Loom allows semi-automatic updating of the mappings used in a Java codebase. Due to frequent changes in Yarn, this can be a useful tool for keeping a codebase up-to-date with the newest changes.
Note: This automated process currently does not handle Mixins or reflection, instances of these will need to be manually updated.
Say you want to migrate from 1.16.5 to 1.17.1.
gradlew migrateMappings --mappings "1.17.1+build.40". DO NOT modify your gradle.properties or build.gradle yet.
remappedSrc. Verify that the migration produced valid migrated code.
remappedSrcto the original folder. Keep the original sources backed up just in case.
--input path/to/source. Default:
--output path/to/output. Default: 'remappedSrc'. You can use
src/main/javahere to avoid having to copy the remapped classes, but make sure you have a backup.
--mappings some_group:some_artifact:some_version:some_qualifier. Default:
net.mojang.minecraft:mappings:<minecraft-version>to migrate to official Mojang mappings.
Some assembly required.
gradle migrateMappings -PtargetMappingsArtifact="net.fabricmc:yarn:1.14.1 Pre-Release 2+build.2" -PinputDir=src/main/java -PoutputDir=remappedSrc, where:
Note: You may need to specify the full paths in quotes, try this if you get file not found issues.
This should work across Minecraft versions as well, provided we haven't massively broken Intermediaries or done something equally silly (aka: most of the time).