[Non-Obf]: Support JIJ with the regular jar task (#1425)

* Implement JIJ for jar task

* Implement JIJ for jar task, now without beeing a dumbass

* Reimplement old task, decouple

* reimplement last missing functionality

* fix checkstyle

* fix checkstyle v2

* fix checkstyle v3

* Remove dead / unneccesary check

* Cleanup / Code-Style

* Cleanup / Code-Style v2
This commit is contained in:
Finn Rades
2025-11-07 20:10:28 +01:00
committed by GitHub
parent e50fce87cc
commit 3a2a67bffe
9 changed files with 239 additions and 8 deletions

View File

@@ -67,17 +67,18 @@ public abstract class RemapTaskConfiguration implements Runnable {
SyncTaskBuildService.register(getProject());
if (extension.dontRemapOutputs()) {
extension.getUnmappedModCollection().from(getTasks().getByName(JavaPlugin.JAR_TASK_NAME));
return;
}
Configuration includeConfiguration = getProject().getConfigurations().getByName(Constants.Configurations.INCLUDE_INTERNAL);
getTasks().register(Constants.Task.PROCESS_INCLUDE_JARS, NestableJarGenerationTask.class, task -> {
TaskProvider<NestableJarGenerationTask> processIncludeJarsTask = getTasks().register(Constants.Task.PROCESS_INCLUDE_JARS, NestableJarGenerationTask.class, task -> {
task.from(includeConfiguration);
task.getOutputDirectory().set(getProject().getLayout().getBuildDirectory().dir(task.getName()));
});
if (extension.dontRemapOutputs()) {
new NonRemappedJarTaskConfiguration(getProject(), extension, processIncludeJarsTask).configure();
return;
}
// Remapping needed - use the traditional remapJar task with JIJ support (original logic)
Action<RemapJarTask> remapJarTaskAction = task -> {
final TaskProvider<AbstractArchiveTask> jarTask = getTasks().named(JavaPlugin.JAR_TASK_NAME, AbstractArchiveTask.class);