Split Minecraft and Forge jars (#34)

* Split Forge & Minecraft jars, WIP!

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Properly remap

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Use async

Signed-off-by: shedaniel <daniel@shedaniel.me>

* Change configurations

Signed-off-by: shedaniel <daniel@shedaniel.me>
This commit is contained in:
shedaniel
2021-07-14 16:51:14 +08:00
committed by GitHub
parent 711212b2a9
commit 55e5b30c51
13 changed files with 296 additions and 88 deletions

View File

@@ -102,7 +102,7 @@ public class MigrateMappingsTask extends AbstractLoomTask {
try {
TinyTree currentMappings = mappingsProvider.getMappings();
TinyTree targetMappings = getMappings(mappings);
migrateMappings(project, extension.getMinecraftMappedProvider(), inputDir, outputDir, currentMappings, targetMappings);
migrateMappings(project, extension, extension.getMinecraftMappedProvider(), inputDir, outputDir, currentMappings, targetMappings);
project.getLogger().lifecycle(":remapped project written to " + outputDir.toAbsolutePath());
} catch (IOException e) {
throw new IllegalArgumentException("Error while loading mappings", e);
@@ -160,8 +160,8 @@ public class MigrateMappingsTask extends AbstractLoomTask {
}
}
private static void migrateMappings(Project project, MinecraftMappedProvider minecraftMappedProvider,
Path inputDir, Path outputDir, TinyTree currentMappings, TinyTree targetMappings
private static void migrateMappings(Project project, LoomGradleExtension extension, MinecraftMappedProvider minecraftMappedProvider,
Path inputDir, Path outputDir, TinyTree currentMappings, TinyTree targetMappings
) throws IOException {
project.getLogger().info(":joining mappings");
@@ -185,6 +185,13 @@ public class MigrateMappingsTask extends AbstractLoomTask {
mercury.getClassPath().add(minecraftMappedProvider.getMappedJar().toPath());
mercury.getClassPath().add(minecraftMappedProvider.getIntermediaryJar().toPath());
if (extension.isForge()) {
mercury.getClassPath().add(minecraftMappedProvider.getSrgJar().toPath());
mercury.getClassPath().add(minecraftMappedProvider.getForgeMappedJar().toPath());
mercury.getClassPath().add(minecraftMappedProvider.getForgeIntermediaryJar().toPath());
mercury.getClassPath().add(minecraftMappedProvider.getForgeSrgJar().toPath());
}
mercury.getProcessors().add(MercuryRemapper.create(mappingSet));
try {