diff options
author | shedaniel <daniel@shedaniel.me> | 2021-05-30 19:17:56 +0800 |
---|---|---|
committer | shedaniel <daniel@shedaniel.me> | 2021-05-30 19:17:56 +0800 |
commit | a4c72b6f038ace5ed4fe469733650dd74bfe00ff (patch) | |
tree | 925442f3fbb755f603a820e474a07c53602a8429 /src/main/java/net/fabricmc/loom/configuration | |
parent | 5692cb277c74ec564b516b7a129ff939fcd459b0 (diff) | |
parent | 210938d749179b8f3cbbd8cae346bf531f6aac60 (diff) | |
download | architectury-loom-a4c72b6f038ace5ed4fe469733650dd74bfe00ff.tar.gz architectury-loom-a4c72b6f038ace5ed4fe469733650dd74bfe00ff.tar.bz2 architectury-loom-a4c72b6f038ace5ed4fe469733650dd74bfe00ff.zip |
Merge remote-tracking branch 'FabricMC/dev/0.8' into dev/0.8
# Conflicts:
# .github/workflows/test-push.yml
# build.gradle
# settings.gradle
# src/test/groovy/net/fabricmc/loom/test/integration/dependencyResolutionManagement.groovy
Diffstat (limited to 'src/main/java/net/fabricmc/loom/configuration')
5 files changed, 10 insertions, 85 deletions
diff --git a/src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java b/src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java index 2b6ee858..33ad2a2a 100644 --- a/src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java +++ b/src/main/java/net/fabricmc/loom/configuration/CompileConfiguration.java @@ -142,8 +142,6 @@ public final class CompileConfiguration { p.afterEvaluate(project -> { LoomGradleExtension extension = project.getExtensions().getByType(LoomGradleExtension.class); - MavenConfiguration.setup(project); - LoomDependencyManager dependencyManager = new LoomDependencyManager(); extension.setDependencyManager(dependencyManager); diff --git a/src/main/java/net/fabricmc/loom/configuration/LoomDependencyManager.java b/src/main/java/net/fabricmc/loom/configuration/LoomDependencyManager.java index d325457b..e9bb6bae 100644 --- a/src/main/java/net/fabricmc/loom/configuration/LoomDependencyManager.java +++ b/src/main/java/net/fabricmc/loom/configuration/LoomDependencyManager.java @@ -45,6 +45,7 @@ import net.fabricmc.loom.configuration.mods.ModProcessor; import net.fabricmc.loom.configuration.providers.mappings.MappingsProvider; import net.fabricmc.loom.util.Constants; import net.fabricmc.loom.util.SourceRemapper; +import net.fabricmc.loom.LoomRepositoryPlugin; public class LoomDependencyManager { private static class ProviderList { @@ -194,7 +195,9 @@ public class LoomDependencyManager { project.getLogger().debug("Loom adding " + name + " from installer JSON"); - if (jsonElement.getAsJsonObject().has("url")) { + // If user choose to use dependencyResolutionManagement, then they should declare + // these repositories manually in the settings file. + if (jsonElement.getAsJsonObject().has("url") && !project.getGradle().getPlugins().hasPlugin(LoomRepositoryPlugin.class)) { String url = jsonElement.getAsJsonObject().get("url").getAsString(); long count = project.getRepositories().stream().filter(artifactRepository -> artifactRepository instanceof MavenArtifactRepository) .map(artifactRepository -> (MavenArtifactRepository) artifactRepository) diff --git a/src/main/java/net/fabricmc/loom/configuration/MavenConfiguration.java b/src/main/java/net/fabricmc/loom/configuration/MavenConfiguration.java deleted file mode 100644 index dc10e375..00000000 --- a/src/main/java/net/fabricmc/loom/configuration/MavenConfiguration.java +++ /dev/null @@ -1,74 +0,0 @@ -/* - * This file is part of fabric-loom, licensed under the MIT License (MIT). - * - * Copyright (c) 2016, 2017, 2018 FabricMC - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in all - * copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - */ - -package net.fabricmc.loom.configuration; - -import org.gradle.api.Project; -import org.gradle.api.artifacts.repositories.MavenArtifactRepository; - -import net.fabricmc.loom.LoomGradleExtension; - -public class MavenConfiguration { - public static void setup(Project project) { - LoomGradleExtension extension = project.getExtensions().getByType(LoomGradleExtension.class); - - project.getRepositories().flatDir(repo -> { - repo.setName("UserLocalCacheFiles"); - repo.dir(extension.getRootProjectBuildCache()); - }); - - project.getRepositories().maven(repo -> { - repo.setName("UserLocalRemappedMods"); - repo.setUrl(extension.getRemappedModCache()); - }); - - project.getRepositories().maven(repo -> { - repo.setName("Fabric"); - repo.setUrl("https://maven.fabricmc.net/"); - }); - - project.getRepositories().maven(repo -> { - repo.setName("Mojang"); - repo.setUrl("https://libraries.minecraft.net/"); - }); - - project.getRepositories().maven(repo -> { - repo.setName("Forge"); - repo.setUrl("https://maven.minecraftforge.net/"); - - repo.metadataSources(sources -> { - sources.mavenPom(); - - try { - MavenArtifactRepository.MetadataSources.class.getDeclaredMethod("ignoreGradleMetadataRedirection") - .invoke(sources); - } catch (Throwable ignored) { - // Method not available - } - }); - }); - - project.getRepositories().mavenCentral(); - } -} diff --git a/src/main/java/net/fabricmc/loom/configuration/processors/MinecraftProcessedProvider.java b/src/main/java/net/fabricmc/loom/configuration/processors/MinecraftProcessedProvider.java index 9673a9a4..f547a3b5 100644 --- a/src/main/java/net/fabricmc/loom/configuration/processors/MinecraftProcessedProvider.java +++ b/src/main/java/net/fabricmc/loom/configuration/processors/MinecraftProcessedProvider.java @@ -37,7 +37,7 @@ import net.fabricmc.loom.configuration.providers.minecraft.MinecraftMappedProvid import net.fabricmc.loom.util.Constants; public class MinecraftProcessedProvider extends MinecraftMappedProvider { - public static final String PROJECT_MAPPED_CLASSIFIER = "projectmapped"; + public final String projectMappedClassifier; private File projectMappedJar; @@ -46,6 +46,8 @@ public class MinecraftProcessedProvider extends MinecraftMappedProvider { public MinecraftProcessedProvider(Project project, JarProcessorManager jarProcessorManager) { super(project); this.jarProcessorManager = jarProcessorManager; + this.projectMappedClassifier = "project-" + project.getPath().replace(':', '@') + + "-mapped"; } @Override @@ -65,14 +67,12 @@ public class MinecraftProcessedProvider extends MinecraftMappedProvider { jarProcessorManager.process(projectMappedJar); } - getProject().getRepositories().flatDir(repository -> repository.dir(getJarDirectory(getExtension().getProjectPersistentCache(), PROJECT_MAPPED_CLASSIFIER))); - getProject().getDependencies().add(Constants.Configurations.MINECRAFT_NAMED, - getProject().getDependencies().module("net.minecraft:minecraft:" + getJarVersionString(PROJECT_MAPPED_CLASSIFIER))); + getProject().getDependencies().module("net.minecraft:minecraft:" + getJarVersionString(projectMappedClassifier))); } private void invalidateJars() { - File dir = getJarDirectory(getExtension().getUserCache(), PROJECT_MAPPED_CLASSIFIER); + File dir = getJarDirectory(getExtension().getUserCache(), projectMappedClassifier); if (dir.exists()) { getProject().getLogger().warn("Invalidating project jars"); @@ -89,7 +89,7 @@ public class MinecraftProcessedProvider extends MinecraftMappedProvider { public void initFiles(MinecraftProvider minecraftProvider, MappingsProvider mappingsProvider) { super.initFiles(minecraftProvider, mappingsProvider); - projectMappedJar = new File(getJarDirectory(getExtension().getProjectPersistentCache(), PROJECT_MAPPED_CLASSIFIER), "minecraft-" + getJarVersionString(PROJECT_MAPPED_CLASSIFIER) + ".jar"); + projectMappedJar = new File(getJarDirectory(getExtension().getRootProjectPersistentCache(), projectMappedClassifier), "minecraft-" + getJarVersionString(projectMappedClassifier) + ".jar"); } @Override diff --git a/src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftMappedProvider.java b/src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftMappedProvider.java index 14333000..fbc9ea86 100644 --- a/src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftMappedProvider.java +++ b/src/main/java/net/fabricmc/loom/configuration/providers/minecraft/MinecraftMappedProvider.java @@ -290,8 +290,6 @@ public class MinecraftMappedProvider extends DependencyProvider { } protected void addDependencies(DependencyInfo dependency, Consumer<Runnable> postPopulationScheduler) { - getProject().getRepositories().flatDir(repository -> repository.dir(getJarDirectory(getExtension().getUserCache(), "mapped"))); - getProject().getDependencies().add(Constants.Configurations.MINECRAFT_NAMED, getProject().getDependencies().module("net.minecraft:minecraft:" + getJarVersionString("mapped"))); } |