aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2021-09-20 01:59:54 +0800
committershedaniel <daniel@shedaniel.me>2021-09-20 01:59:54 +0800
commit6522a826e1adba9a55070df3d4ae38ecfcfce565 (patch)
treed7b0dc8f05d0438926b5eb6a614e1a45837cb5b3
parentfa105469f4928487c4c2a6085489bb1b15b1a2d1 (diff)
downloadarchitectury-loom-6522a826e1adba9a55070df3d4ae38ecfcfce565.tar.gz
architectury-loom-6522a826e1adba9a55070df3d4ae38ecfcfce565.tar.bz2
architectury-loom-6522a826e1adba9a55070df3d4ae38ecfcfce565.zip
Fix forge with AT
Signed-off-by: shedaniel <daniel@shedaniel.me>
-rw-r--r--src/main/java/net/fabricmc/loom/configuration/processors/MinecraftProcessedProvider.java4
-rw-r--r--src/main/java/net/fabricmc/loom/configuration/providers/forge/ForgeProvider.java2
-rw-r--r--src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftMappedProvider.java2
-rw-r--r--src/main/java/net/fabricmc/loom/configuration/sources/ForgeSourcesRemapper.java22
4 files changed, 24 insertions, 6 deletions
diff --git a/src/main/java/net/fabricmc/loom/configuration/processors/MinecraftProcessedProvider.java b/src/main/java/net/fabricmc/loom/configuration/processors/MinecraftProcessedProvider.java
index fd3e3bda..744bc53e 100644
--- a/src/main/java/net/fabricmc/loom/configuration/processors/MinecraftProcessedProvider.java
+++ b/src/main/java/net/fabricmc/loom/configuration/processors/MinecraftProcessedProvider.java
@@ -68,7 +68,7 @@ public class MinecraftProcessedProvider extends MinecraftMappedProvider {
}
getProject().getDependencies().add(Constants.Configurations.MINECRAFT_NAMED,
- getProject().getDependencies().module("net.minecraft:minecraft-" + projectMappedClassifier + ":" + getMinecraftProvider().minecraftVersion() + "/" + getExtension().getMappingsProvider().mappingsIdentifier()));
+ getProject().getDependencies().module("net.minecraft:" + minecraftProvider.getJarPrefix() + "minecraft-" + projectMappedClassifier + ":" + getMinecraftProvider().minecraftVersion() + "/" + getExtension().getMappingsProvider().mappingsIdentifier()));
}
private void invalidateJar() {
@@ -88,7 +88,7 @@ public class MinecraftProcessedProvider extends MinecraftMappedProvider {
super.initFiles(minecraftProvider, mappingsProvider);
projectMappedJar = new File(getDirectories().getRootProjectPersistentCache(), getMinecraftProvider().minecraftVersion() + "/"
- + getExtension().getMappingsProvider().mappingsIdentifier() + "/minecraft-" + projectMappedClassifier + ".jar");
+ + getExtension().getMappingsProvider().mappingsIdentifier() + "/" + minecraftProvider.getJarPrefix() + "minecraft-" + projectMappedClassifier + ".jar");
}
@Override
diff --git a/src/main/java/net/fabricmc/loom/configuration/providers/forge/ForgeProvider.java b/src/main/java/net/fabricmc/loom/configuration/providers/forge/ForgeProvider.java
index d8f8800a..cd626652 100644
--- a/src/main/java/net/fabricmc/loom/configuration/providers/forge/ForgeProvider.java
+++ b/src/main/java/net/fabricmc/loom/configuration/providers/forge/ForgeProvider.java
@@ -63,7 +63,7 @@ public class ForgeProvider extends DependencyProvider {
public File getProjectCache() {
if (projectCache == null) {
- projectCache = new File(getDirectories().getProjectPersistentCache(), "forge/" + getExtension().getForgeProvider().getVersion().getCombined());
+ projectCache = new File(getDirectories().getRootProjectPersistentCache(), getMinecraftProvider().minecraftVersion() + "/forge/" + getExtension().getForgeProvider().getVersion().getCombined() + "/project-" + getProject().getPath().replace(':', '@'));
projectCache.mkdirs();
}
diff --git a/src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftMappedProvider.java b/src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftMappedProvider.java
index fd2d95ca..5d03b971 100644
--- a/src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftMappedProvider.java
+++ b/src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftMappedProvider.java
@@ -73,7 +73,7 @@ public class MinecraftMappedProvider extends DependencyProvider {
private File forgeIntermediaryJar;
private File forgeSrgJar;
- private MinecraftProviderImpl minecraftProvider;
+ protected MinecraftProviderImpl minecraftProvider;
public MinecraftMappedProvider(Project project) {
super(project);
diff --git a/src/main/java/net/fabricmc/loom/configuration/sources/ForgeSourcesRemapper.java b/src/main/java/net/fabricmc/loom/configuration/sources/ForgeSourcesRemapper.java
index 076f3674..34b8badf 100644
--- a/src/main/java/net/fabricmc/loom/configuration/sources/ForgeSourcesRemapper.java
+++ b/src/main/java/net/fabricmc/loom/configuration/sources/ForgeSourcesRemapper.java
@@ -26,6 +26,7 @@ package net.fabricmc.loom.configuration.sources;
import java.io.File;
import java.io.IOException;
+import java.io.PrintStream;
import java.io.UncheckedIOException;
import java.nio.file.Files;
import java.nio.file.Path;
@@ -39,11 +40,14 @@ import java.util.concurrent.ConcurrentHashMap;
import java.util.function.BiConsumer;
import java.util.stream.Collectors;
+import org.apache.commons.io.output.NullOutputStream;
import org.cadixdev.lorenz.MappingSet;
import org.cadixdev.mercury.Mercury;
import org.cadixdev.mercury.remapper.MercuryRemapper;
import org.gradle.api.Project;
import org.gradle.api.artifacts.ResolvedArtifact;
+import org.gradle.api.logging.LogLevel;
+import org.gradle.api.logging.configuration.ShowStacktrace;
import org.zeroturnaround.zip.ZipUtil;
import net.fabricmc.loom.LoomGradleExtension;
@@ -134,7 +138,21 @@ public class ForgeSourcesRemapper {
taskCompleter.complete();
}
+ PrintStream out = System.out;
+ PrintStream err = System.err;
+
+ if (project.getGradle().getStartParameter().getShowStacktrace() == ShowStacktrace.INTERNAL_EXCEPTIONS && project.getGradle().getStartParameter().getLogLevel().compareTo(LogLevel.LIFECYCLE) >= 0) {
+ System.setOut(new PrintStream(NullOutputStream.NULL_OUTPUT_STREAM));
+ System.setErr(new PrintStream(NullOutputStream.NULL_OUTPUT_STREAM));
+ }
+
remapForgeSourcesInner(project, tmpInput.toPath(), tmpOutput.toPath());
+
+ if (project.getGradle().getStartParameter().getShowStacktrace() == ShowStacktrace.INTERNAL_EXCEPTIONS && project.getGradle().getStartParameter().getLogLevel().compareTo(LogLevel.LIFECYCLE) >= 0) {
+ System.setOut(out);
+ System.setErr(err);
+ }
+
tmpInput.delete();
int[] failedToRemap = {0};
@@ -149,7 +167,7 @@ public class ForgeSourcesRemapper {
sources.put(entry.getKey(), Files.readAllBytes(path));
} else {
sources.remove(entry.getKey());
- project.getLogger().error("forge source failed to remap " + entry.getKey());
+ project.getLogger().error("Failed to remap sources for " + entry.getKey());
failedToRemap[0]++;
}
});
@@ -161,7 +179,7 @@ public class ForgeSourcesRemapper {
tmpOutput.delete();
if (failedToRemap[0] > 0) {
- project.getLogger().error("{} forge sources failed to remap", failedToRemap[0]);
+ project.getLogger().error("Failed to remap {} forge sources", failedToRemap[0]);
}
}