diff --git a/src/main/java/net/fabricmc/loom/AbstractPlugin.java b/src/main/java/net/fabricmc/loom/AbstractPlugin.java index 2f59bdd7..9299ac89 100644 --- a/src/main/java/net/fabricmc/loom/AbstractPlugin.java +++ b/src/main/java/net/fabricmc/loom/AbstractPlugin.java @@ -177,7 +177,9 @@ public class AbstractPlugin implements Plugin { if (module instanceof ResolvedDependencyResult) { if (module.getFrom().getId() instanceof ModuleComponentIdentifier) { ModuleComponentIdentifier mci = ((ModuleComponentIdentifier) module.getFrom().getId()); - proj.getDependencies().add(configuration, proj.getDependencies().module(mci.getGroup() + ":" + mci.getModule() + ":" + mci.getVersion())); + String moduleId = mci.getGroup() + ":" + mci.getModule() + ":" + mci.getVersion(); + proj.getDependencies().add(configuration, proj.getDependencies().module(moduleId)); + proj.getLogger().debug("Loom addModule " + moduleId + " to " + configuration); } for (DependencyResult child : ((ResolvedDependencyResult) module).getSelected().getDependencies()) { diff --git a/src/main/java/net/fabricmc/loom/LoomGradleExtension.java b/src/main/java/net/fabricmc/loom/LoomGradleExtension.java index 96537fde..a7034134 100644 --- a/src/main/java/net/fabricmc/loom/LoomGradleExtension.java +++ b/src/main/java/net/fabricmc/loom/LoomGradleExtension.java @@ -139,12 +139,13 @@ public class LoomGradleExtension { } @Nullable - private static Dependency findDependency(Collection configs, BiPredicate groupNameFilter) { + private static Dependency findDependency(Project p, Collection configs, BiPredicate groupNameFilter) { for (Configuration config : configs) { for (Dependency dependency : config.getDependencies()) { String group = dependency.getGroup(); String name = dependency.getName(); if (groupNameFilter.test(group, name)) { + p.getLogger().debug("Loom findDependency found: " + group + ":" + name + ":" + dependency.getVersion()); return dependency; } } @@ -171,12 +172,12 @@ public class LoomGradleExtension { private Dependency getMixinDependency() { return recurseProjects((p) -> { List configs = new ArrayList<>(); - // check compile first - configs.add(p.getConfigurations().getByName("compile")); + // check compile classpath first + configs.add(p.getConfigurations().getByName("compileClasspath")); // failing that, buildscript configs.addAll(p.getBuildscript().getConfigurations()); - return findDependency(configs, (group, name) -> { + return findDependency(p, configs, (group, name) -> { if (name.equalsIgnoreCase("mixin") && group.equalsIgnoreCase("org.spongepowered")) { return true; } diff --git a/src/main/java/net/fabricmc/loom/util/LoomDependencyManager.java b/src/main/java/net/fabricmc/loom/util/LoomDependencyManager.java index e58cfa8e..c5710188 100644 --- a/src/main/java/net/fabricmc/loom/util/LoomDependencyManager.java +++ b/src/main/java/net/fabricmc/loom/util/LoomDependencyManager.java @@ -154,13 +154,18 @@ public class LoomDependencyManager { private static void handleInstallerJson(JsonObject jsonObject, Project project){ JsonObject libraries = jsonObject.get("libraries").getAsJsonObject(); + Configuration mcDepsConfig = project.getConfigurations().getByName(Constants.MINECRAFT_DEPENDENCIES); + Configuration apDepsConfig = project.getConfigurations().getByName("annotationProcessor"); + libraries.get("common").getAsJsonArray().forEach(jsonElement -> { String name = jsonElement.getAsJsonObject().get("name").getAsString(); - Configuration configuration = project.getConfigurations().getByName(Constants.MINECRAFT_DEPENDENCIES); ExternalModuleDependency modDep = (ExternalModuleDependency) project.getDependencies().create(name); modDep.setTransitive(false); - configuration.getDependencies().add(modDep); + mcDepsConfig.getDependencies().add(modDep); + apDepsConfig.getDependencies().add(modDep); + + project.getLogger().debug("Loom adding " + name + " from installer JSON"); if(jsonElement.getAsJsonObject().has("url")){ String url = jsonElement.getAsJsonObject().get("url").getAsString();