diff options
author | shedaniel <daniel@shedaniel.me> | 2021-07-20 17:30:02 +0800 |
---|---|---|
committer | shedaniel <daniel@shedaniel.me> | 2021-07-20 17:33:35 +0800 |
commit | 49d05ad42df60970ce56dedf7e0a3f947f0a974b (patch) | |
tree | b41ccd2d51949da2f18548372240f71e2030d78f /src/main/java | |
parent | ab351ee8c0262c459be2396636b775194f8f5028 (diff) | |
download | architectury-loom-49d05ad42df60970ce56dedf7e0a3f947f0a974b.tar.gz architectury-loom-49d05ad42df60970ce56dedf7e0a3f947f0a974b.tar.bz2 architectury-loom-49d05ad42df60970ce56dedf7e0a3f947f0a974b.zip |
Give a proper working directory for GradleMappingContext
Signed-off-by: shedaniel <daniel@shedaniel.me>
(cherry picked from commit 5eafbbceeb35f8be9a21df7494e935a50e20e119)
Signed-off-by: shedaniel <daniel@shedaniel.me>
Diffstat (limited to 'src/main/java')
-rw-r--r-- | src/main/java/net/fabricmc/loom/LoomGradleExtension.java | 6 | ||||
-rw-r--r-- | src/main/java/net/fabricmc/loom/configuration/providers/mappings/GradleMappingContext.java | 7 |
2 files changed, 9 insertions, 4 deletions
diff --git a/src/main/java/net/fabricmc/loom/LoomGradleExtension.java b/src/main/java/net/fabricmc/loom/LoomGradleExtension.java index b3a1168f..8832beb7 100644 --- a/src/main/java/net/fabricmc/loom/LoomGradleExtension.java +++ b/src/main/java/net/fabricmc/loom/LoomGradleExtension.java @@ -74,6 +74,7 @@ import net.fabricmc.loom.configuration.providers.mappings.LayeredMappingSpec; import net.fabricmc.loom.configuration.providers.mappings.LayeredMappingSpecBuilder; import net.fabricmc.loom.configuration.providers.mappings.LayeredMappingsDependency; import net.fabricmc.loom.configuration.providers.mappings.MappingsProviderImpl; +import net.fabricmc.loom.configuration.providers.minecraft.MinecraftVersionMeta; import net.fabricmc.loom.util.ModPlatform; import net.fabricmc.loom.util.function.LazyBool; @@ -231,7 +232,10 @@ public class LoomGradleExtension { LayeredMappingSpecBuilder builder = new LayeredMappingSpecBuilder(this); action.execute(builder); LayeredMappingSpec builtSpec = builder.build(); - return new LayeredMappingsDependency(new GradleMappingContext(project, "layers_" + builtSpec.getVersion().replace("+", "_").replace(".", "_")), builtSpec, builtSpec.getVersion()); + return new LayeredMappingsDependency(new GradleMappingContext(project, () -> { + MinecraftVersionMeta versionInfo = getMinecraftProvider().getVersionInfo(); + return "layers/" + versionInfo.id() + "_" + builtSpec.getVersion().replace("+", "_").replace(".", "_"); + }), builtSpec, builtSpec.getVersion()); } public LoomGradleExtension(Project project) { diff --git a/src/main/java/net/fabricmc/loom/configuration/providers/mappings/GradleMappingContext.java b/src/main/java/net/fabricmc/loom/configuration/providers/mappings/GradleMappingContext.java index 478896d1..f2f928bc 100644 --- a/src/main/java/net/fabricmc/loom/configuration/providers/mappings/GradleMappingContext.java +++ b/src/main/java/net/fabricmc/loom/configuration/providers/mappings/GradleMappingContext.java @@ -25,6 +25,7 @@ package net.fabricmc.loom.configuration.providers.mappings; import java.io.File; +import java.util.function.Supplier; import org.gradle.api.Project; import org.gradle.api.artifacts.Configuration; @@ -36,9 +37,9 @@ import net.fabricmc.loom.configuration.providers.MinecraftProvider; public class GradleMappingContext implements MappingContext { private final Project project; private final LoomGradleExtension extension; - private final String workingDirName; + private final Supplier<String> workingDirName; - public GradleMappingContext(Project project, String workingDirName) { + public GradleMappingContext(Project project, Supplier<String> workingDirName) { this.project = project; this.extension = project.getExtensions().getByType(LoomGradleExtension.class); this.workingDirName = workingDirName; @@ -62,7 +63,7 @@ public class GradleMappingContext implements MappingContext { @Override public File workingDirectory(String name) { - File tempDir = new File(mappingsProvider().getMappingsDir().toFile(), workingDirName); + File tempDir = new File(mappingsProvider().getMappingsDir().toFile(), workingDirName.get()); tempDir.mkdirs(); return new File(tempDir, name); } |