From a8e0c8edbbe73fc3c673eb50366f12b610721f14 Mon Sep 17 00:00:00 2001 From: modmuss50 Date: Wed, 21 Oct 2020 08:57:13 +0100 Subject: [PATCH] Potentially fix memory leak with the mixin AP --- src/main/java/net/fabricmc/loom/AbstractPlugin.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/main/java/net/fabricmc/loom/AbstractPlugin.java b/src/main/java/net/fabricmc/loom/AbstractPlugin.java index 1c16ed0..c6cbc86 100644 --- a/src/main/java/net/fabricmc/loom/AbstractPlugin.java +++ b/src/main/java/net/fabricmc/loom/AbstractPlugin.java @@ -340,16 +340,20 @@ public class AbstractPlugin implements Plugin { extension.getUnmappedModCollection().from(jarTask); } - project.getLogger().lifecycle("Configuring compiler arguments for Java"); + // Disable some things used by log4j via the mixin AP that prevent it from being garbage collected + System.setProperty("log4j2.disable.jmx", "true"); + System.setProperty("log4j.shutdownHookEnabled", "false"); + + project.getLogger().info("Configuring compiler arguments for Java"); new JavaApInvoker(project).configureMixin(); if (project.getPluginManager().hasPlugin("scala")) { - project.getLogger().lifecycle("Configuring compiler arguments for Scala"); + project.getLogger().info("Configuring compiler arguments for Scala"); new ScalaApInvoker(project).configureMixin(); } if (project.getPluginManager().hasPlugin("org.jetbrains.kotlin.kapt")) { - project.getLogger().lifecycle("Configuring compiler arguments for Kapt plugin"); + project.getLogger().info("Configuring compiler arguments for Kapt plugin"); new KaptApInvoker(project).configureMixin(); } });