aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2021-07-20 17:30:02 +0800
committershedaniel <daniel@shedaniel.me>2021-07-20 17:33:35 +0800
commit49d05ad42df60970ce56dedf7e0a3f947f0a974b (patch)
treeb41ccd2d51949da2f18548372240f71e2030d78f /src/main/java
parentab351ee8c0262c459be2396636b775194f8f5028 (diff)
downloadarchitectury-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.java6
-rw-r--r--src/main/java/net/fabricmc/loom/configuration/providers/mappings/GradleMappingContext.java7
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);
}