diff --git a/dsl/common/src/main/groovy/net/neoforged/gradle/dsl/common/tasks/Execute.groovy b/dsl/common/src/main/groovy/net/neoforged/gradle/dsl/common/tasks/Execute.groovy index 59875cb41..9ce03eb4c 100644 --- a/dsl/common/src/main/groovy/net/neoforged/gradle/dsl/common/tasks/Execute.groovy +++ b/dsl/common/src/main/groovy/net/neoforged/gradle/dsl/common/tasks/Execute.groovy @@ -129,6 +129,8 @@ interface Execute extends WithWorkspace, WithOutput, WithJavaVersion, ExecuteSpe java.setWorkingDir(me.getOutputDirectory().get()) java.getMainClass().set(mainClass) java.setStandardOutput(log_out) + + java.setMaxHeapSize(String.format("%dk", Runtime.getRuntime().maxMemory() / 1000)) }).rethrowFailure().assertNormalExitValue() } } diff --git a/neoform/src/main/java/net/neoforged/gradle/neoform/runtime/tasks/RecompileSourceJar.java b/neoform/src/main/java/net/neoforged/gradle/neoform/runtime/tasks/RecompileSourceJar.java index fa44438a9..7225dd668 100644 --- a/neoform/src/main/java/net/neoforged/gradle/neoform/runtime/tasks/RecompileSourceJar.java +++ b/neoform/src/main/java/net/neoforged/gradle/neoform/runtime/tasks/RecompileSourceJar.java @@ -101,6 +101,7 @@ public RecompileSourceJar() { getOptions().setFork(true); getOptions().setIncremental(true); getOptions().getIncrementalAfterFailure().set(true); + getOptions().getForkOptions().setMemoryMaximumSize(String.format("%dk", java.lang.Runtime.getRuntime().maxMemory() / 1000)); //Leave this as an anon class, so that gradle is aware of this. Lambdas can not be used during task tree analysis. //noinspection Convert2Lambda