diff --git a/src/main/java/net/fabricmc/loom/task/AbstractRemapJarTask.java b/src/main/java/net/fabricmc/loom/task/AbstractRemapJarTask.java index 053d8ec5..4849ea72 100644 --- a/src/main/java/net/fabricmc/loom/task/AbstractRemapJarTask.java +++ b/src/main/java/net/fabricmc/loom/task/AbstractRemapJarTask.java @@ -29,6 +29,7 @@ import java.io.ByteArrayOutputStream; import java.io.File; import java.io.IOException; import java.nio.file.Path; +import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Set; @@ -92,6 +93,9 @@ public abstract class AbstractRemapJarTask extends Jar { @Input public abstract Property getIncludesClientOnlyClasses(); + @Input + public abstract ListProperty getAdditionalClientOnlyEntries(); + @Inject public AbstractRemapJarTask() { getSourceNamespace().convention(MappingsNamespace.NAMED.toString()).finalizeValueOnRead(); @@ -116,7 +120,8 @@ public abstract class AbstractRemapJarTask extends Jar { params.getJarManifestService().set(JarManifestService.get(getProject())); if (getIncludesClientOnlyClasses().get()) { - final List clientOnlyEntries = getClientOnlyEntries(); + final List clientOnlyEntries = new ArrayList<>(getClientOnlyEntries()); + clientOnlyEntries.addAll(getAdditionalClientOnlyEntries().get()); applyClientOnlyManifestAttributes(params, clientOnlyEntries); params.getClientOnlyEntries().set(clientOnlyEntries.stream().filter(s -> s.endsWith(".class")).toList()); }