diff --git a/src/main/java/net/fabricmc/loom/configuration/mods/ModConfigurationRemapper.java b/src/main/java/net/fabricmc/loom/configuration/mods/ModConfigurationRemapper.java index e646405d..0079e333 100644 --- a/src/main/java/net/fabricmc/loom/configuration/mods/ModConfigurationRemapper.java +++ b/src/main/java/net/fabricmc/loom/configuration/mods/ModConfigurationRemapper.java @@ -94,7 +94,7 @@ public class ModConfigurationRemapper { final Configuration target = RemapConfigurations.getOrCreateCollectorConfiguration(project, entry, runtime); // We copy the source with the desired usage type to get only the runtime or api jars, not both. - final Configuration sourceCopy = entry.getSourceConfiguration().get().copy(); + final Configuration sourceCopy = entry.getSourceConfiguration().get().copyRecursive(); final Usage usage = project.getObjects().named(Usage.class, runtime ? Usage.JAVA_RUNTIME : Usage.JAVA_API); sourceCopy.attributes(attributes -> attributes.attribute(Usage.USAGE_ATTRIBUTE, usage)); configsToRemap.put(sourceCopy, target); diff --git a/src/main/java/net/fabricmc/loom/configuration/processors/SpecContextImpl.java b/src/main/java/net/fabricmc/loom/configuration/processors/SpecContextImpl.java index 83de5673..9ce71a41 100644 --- a/src/main/java/net/fabricmc/loom/configuration/processors/SpecContextImpl.java +++ b/src/main/java/net/fabricmc/loom/configuration/processors/SpecContextImpl.java @@ -128,7 +128,7 @@ public record SpecContextImpl(List modDependencies, List { - final Configuration configuration = settings.getSourceConfiguration().get().copy(); + final Configuration configuration = settings.getSourceConfiguration().get().copyRecursive(); configuration.attributes(attributes -> attributes.attribute(Usage.USAGE_ATTRIBUTE, usage)); return configuration.resolve().stream().map(File::toPath); }; diff --git a/src/test/resources/projects/maven/build.gradle b/src/test/resources/projects/maven/build.gradle index 0b19a3ad..2c3e3786 100644 --- a/src/test/resources/projects/maven/build.gradle +++ b/src/test/resources/projects/maven/build.gradle @@ -16,12 +16,17 @@ repositories { } } +configurations { + testConfig + modImplementation.extendsFrom testConfig +} + dependencies { minecraft "com.mojang:minecraft:1.16.5" mappings "net.fabricmc:yarn:1.16.5+build.5:v2" modImplementation "net.fabricmc:fabric-loader:0.11.2" - modImplementation System.getProperty("loom.test.resolve") + testConfig System.getProperty("loom.test.resolve") } task checkClasspaths {