diff --git a/build.gradle b/build.gradle index 2a32b6f6..928950ab 100644 --- a/build.gradle +++ b/build.gradle @@ -22,7 +22,7 @@ if (ENV.BUILD_NUMBER) { build = "release #${ENV.BUILD_NUMBER}" version = baseVersion + '.' + ENV.BUILD_NUMBER } else { - version = baseVersion + '-forge.36' + version = baseVersion + '-forge.39' } configurations { diff --git a/src/main/java/net/fabricmc/loom/util/RunConfig.java b/src/main/java/net/fabricmc/loom/util/RunConfig.java index 03829489..445b5f85 100644 --- a/src/main/java/net/fabricmc/loom/util/RunConfig.java +++ b/src/main/java/net/fabricmc/loom/util/RunConfig.java @@ -42,8 +42,8 @@ import com.google.gson.JsonElement; import com.google.gson.JsonObject; import org.apache.commons.io.FileUtils; import org.apache.commons.io.IOUtils; -import org.gradle.api.tasks.Copy; -import org.gradle.api.tasks.compile.JavaCompile; +import org.gradle.api.plugins.JavaPluginConvention; +import org.gradle.api.tasks.SourceSet; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; @@ -134,15 +134,18 @@ public class RunConfig { if (extension.isForge()) { StringBuilder modClasses = new StringBuilder(); + SourceSet main = project.getConvention().getPlugin(JavaPluginConvention.class).getSourceSets().getByName("main"); modClasses.append("loom%%"); - modClasses.append(((Copy) project.getTasks().getByName("processResources")).getDestinationDir().getAbsolutePath()); - modClasses.append(';'); - modClasses.append("loom%%"); - // This *should* include Kotlin as well AFAIK. - modClasses.append(((JavaCompile) project.getTasks().getByName("compileJava")).getDestinationDir().getAbsolutePath()); + modClasses.append(main.getOutput().getResourcesDir().getAbsolutePath()); modClasses.append(';'); + for (File classes : main.getOutput().getClassesDirs()) { + modClasses.append("loom%%"); + modClasses.append(classes.getAbsolutePath()); + modClasses.append(';'); + } + runConfig.envVariables.put("MOD_CLASSES", modClasses.toString()); }