aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/net/fabricmc/loom/task/LoomTasks.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/net/fabricmc/loom/task/LoomTasks.java')
-rw-r--r--src/main/java/net/fabricmc/loom/task/LoomTasks.java33
1 files changed, 22 insertions, 11 deletions
diff --git a/src/main/java/net/fabricmc/loom/task/LoomTasks.java b/src/main/java/net/fabricmc/loom/task/LoomTasks.java
index 57b9da84..c2857fa7 100644
--- a/src/main/java/net/fabricmc/loom/task/LoomTasks.java
+++ b/src/main/java/net/fabricmc/loom/task/LoomTasks.java
@@ -37,7 +37,6 @@ import net.fabricmc.loom.api.decompilers.LoomDecompiler;
import net.fabricmc.loom.configuration.ide.RunConfigSettings;
import net.fabricmc.loom.configuration.ide.SetupIntelijRunConfigs;
import net.fabricmc.loom.configuration.providers.mappings.MappingsProviderImpl;
-import net.fabricmc.loom.decompilers.fernflower.FabricFernFlowerDecompiler;
import net.fabricmc.loom.util.Constants;
public final class LoomTasks {
@@ -157,7 +156,7 @@ public final class LoomTasks {
return;
}
- File inputJar = mappingsProvider.mappedProvider.getMappedJar();
+ File mappedJar = mappingsProvider.mappedProvider.getMappedJar();
if (mappingsProvider.hasUnpickDefinitions()) {
File outputJar = mappingsProvider.mappedProvider.getUnpickedJar();
@@ -168,21 +167,33 @@ public final class LoomTasks {
unpickJarTask.getOutputJar().set(outputJar);
});
- inputJar = outputJar;
+ mappedJar = outputJar;
}
+ final File inputJar = mappedJar;
+
extension.getGameDecompilers().finalizeValue();
for (LoomDecompiler decompiler : extension.getGameDecompilers().get()) {
- String taskName = decompiler instanceof FabricFernFlowerDecompiler ? "genSources" : "genSourcesWith" + decompiler.name();
- // decompiler will be passed to the constructor of GenerateSourcesTask
- GenerateSourcesTask generateSourcesTask = tasks.register(taskName, GenerateSourcesTask.class, decompiler).get();
- generateSourcesTask.getInputJar().set(inputJar);
-
- if (mappingsProvider.hasUnpickDefinitions()) {
- generateSourcesTask.dependsOn(tasks.getByName("unpickJar"));
- }
+ String taskName = "genSourcesWith" + decompiler.name();
+ // Decompiler will be passed to the constructor of GenerateSourcesTask
+ tasks.register(taskName, GenerateSourcesTask.class, decompiler).configure(task -> {
+ task.setDescription("Decompile minecraft using %s.".formatted(decompiler.name()));
+ task.setGroup(Constants.TaskGroup.FABRIC);
+ task.getInputJar().set(inputJar);
+
+ if (mappingsProvider.hasUnpickDefinitions()) {
+ task.dependsOn(tasks.getByName("unpickJar"));
+ }
+ });
}
+
+ tasks.register("genSources", task -> {
+ task.setDescription("Decompile minecraft using the default decompiler.");
+ task.setGroup(Constants.TaskGroup.FABRIC);
+
+ task.dependsOn(project.getTasks().getByName("genSourcesWithCfr"));
+ });
});
}
}