From 6bec4e592a6418dcc426b91b0305378a8b61077e Mon Sep 17 00:00:00 2001 From: modmuss50 Date: Fri, 6 Sep 2019 19:59:45 +0100 Subject: [PATCH] add modCompileOnly and include deps in the implementation configuration in the run tasks --- .../java/net/fabricmc/loom/task/AbstractRunTask.java | 11 ++++++++--- src/main/java/net/fabricmc/loom/util/Constants.java | 3 ++- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/main/java/net/fabricmc/loom/task/AbstractRunTask.java b/src/main/java/net/fabricmc/loom/task/AbstractRunTask.java index e610f1ce..ee2eb536 100644 --- a/src/main/java/net/fabricmc/loom/task/AbstractRunTask.java +++ b/src/main/java/net/fabricmc/loom/task/AbstractRunTask.java @@ -62,9 +62,14 @@ public abstract class AbstractRunTask extends JavaExec { MappingsProvider mappingsProvider = extension.getMappingsProvider(); List libs = new ArrayList<>(); - for (File file : getProject().getConfigurations().getByName("compile").getFiles()) { - libs.add(file.getAbsolutePath()); - } + + String[] configurations = new String[]{"compile", "implementation"}; + for(String configuration : configurations){ + for (File file : getProject().getConfigurations().getByName(configuration).getFiles()) { + libs.add(file.getAbsolutePath()); + } + } + for (Path file : extension.getUnmappedMods()) { if (Files.isRegularFile(file)) { libs.add(file.toFile().getAbsolutePath()); diff --git a/src/main/java/net/fabricmc/loom/util/Constants.java b/src/main/java/net/fabricmc/loom/util/Constants.java index 48526cfe..d75aec85 100644 --- a/src/main/java/net/fabricmc/loom/util/Constants.java +++ b/src/main/java/net/fabricmc/loom/util/Constants.java @@ -45,7 +45,8 @@ public class Constants { new RemappedConfigurationEntry("modCompile", "compile", true, "compile"), new RemappedConfigurationEntry("modApi", "api", true, "compile"), new RemappedConfigurationEntry("modImplementation", "implementation", true, "runtime"), - new RemappedConfigurationEntry("modRuntime", "runtimeOnly", false, "") + new RemappedConfigurationEntry("modRuntime", "runtimeOnly", false, ""), + new RemappedConfigurationEntry("modCompileOnly", "compileOnly", true, "") ); public static final String INCLUDE = "include";