Try using SpecialSource directly instead of going through ForgeGradle

This commit is contained in:
Juuxel
2020-07-28 00:40:54 +03:00
parent ab01d8c989
commit 3f9c697834
2 changed files with 6 additions and 23 deletions

View File

@@ -74,7 +74,7 @@ dependencies {
implementation ('org.cadixdev:lorenz:0.5.3')
implementation ('org.cadixdev:lorenz-asm:0.5.3')
implementation ('org.cadixdev:atlas:0.2.0')
implementation ('net.minecraftforge.gradle:ForgeGradle:3.0.179')
implementation ('net.md-5:SpecialSource:1.8.6')
// Testing
testImplementation(gradleTestKit())

View File

@@ -47,9 +47,8 @@ import com.google.common.collect.ImmutableMap;
import com.google.common.io.Files;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import net.md_5.specialsource.SpecialSource;
import net.minecraftforge.binarypatcher.ConsoleTool;
import net.minecraftforge.gradle.mcp.util.MCPRuntime;
import net.minecraftforge.gradle.mcp.util.MCPWrapper;
import org.cadixdev.atlas.Atlas;
import org.cadixdev.bombe.asm.jar.JarEntryRemappingTransformer;
import org.cadixdev.lorenz.MappingSet;
@@ -237,26 +236,10 @@ public class MinecraftProvider extends DependencyProvider {
}
private void createSrgJars(Logger logger) throws Exception {
logger.lifecycle(":remapping minecraft (MCP, official -> srg)");
McpConfigProvider volde = getExtension().getMcpConfigProvider();
File root = new File(getExtension().getUserCache(), "mcp_root");
root.mkdirs();
MCPWrapper wrapper = new MCPWrapper(volde.getMcp(), root);
// Client
{
MCPRuntime runtime = wrapper.getRuntime(getProject(), "client");
File output = runtime.execute(logger, "rename");
Files.copy(output, minecraftClientSrgJar);
}
// Server
{
MCPRuntime runtime = wrapper.getRuntime(getProject(), "server");
File output = runtime.execute(logger, "rename");
Files.copy(output, minecraftServerSrgJar);
}
logger.lifecycle(":remapping minecraft (SpecialSource, official -> srg)");
String mappings = getExtension().getMcpConfigProvider().getSrg().getAbsolutePath();
SpecialSource.main(new String[] { "--in-jar", minecraftClientJar.getAbsolutePath(), "--out-jar", minecraftClientSrgJar.getAbsolutePath(), "--srg-in", mappings });
SpecialSource.main(new String[] { "--in-jar", minecraftServerJar.getAbsolutePath(), "--out-jar", minecraftServerSrgJar.getAbsolutePath(), "--srg-in", mappings });
}
private void injectForgeClasses(Logger logger) throws IOException {