From 5a79aa1066ffe7fa90b9db564f8f6626e149fd71 Mon Sep 17 00:00:00 2001 From: shedaniel Date: Sun, 20 Jun 2021 18:47:45 +0800 Subject: [PATCH] Patch support for Loom 0.9 Signed-off-by: shedaniel --- .../architectury/plugin/ArchitecturyPluginExtension.kt | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/main/kotlin/dev/architectury/plugin/ArchitecturyPluginExtension.kt b/src/main/kotlin/dev/architectury/plugin/ArchitecturyPluginExtension.kt index 98751e3..4503c48 100644 --- a/src/main/kotlin/dev/architectury/plugin/ArchitecturyPluginExtension.kt +++ b/src/main/kotlin/dev/architectury/plugin/ArchitecturyPluginExtension.kt @@ -80,13 +80,19 @@ open class ArchitectPluginExtension(val project: Project) { BuiltinProperties.INJECT_INJECTABLES to injectInjectables.toString(), BuiltinProperties.UNIQUE_IDENTIFIER to project.projectUniqueIdentifier(), BuiltinProperties.COMPILE_CLASSPATH to getCompileClasspath().joinToString(File.pathSeparator), - BuiltinProperties.MAPPINGS_WITH_SRG to loom.mappingsProvider.tinyMappingsWithSrg.toString(), + BuiltinProperties.MAPPINGS_WITH_SRG to loom.tinyMappingsWithSrg.toString(), "architectury.platform.name" to platform, BuiltinProperties.REFMAP_NAME to loom.refmapName, BuiltinProperties.MCMETA_VERSION to "4" ) } + private val LoomGradleExtension.tinyMappingsWithSrg: Path + get() { + val mappingsProvider = LoomGradleExtension::class.java.getDeclaredMethod("getMappingsProvider").invoke(this) + return mappingsProvider.javaClass.getField("tinyMappingsWithSrg").get(mappingsProvider) as Path + } + private fun getCompileClasspath(): Iterable { return project.configurations.findByName("architecturyTransformerClasspath") ?: project.configurations.getByName("compileClasspath") } @@ -211,7 +217,7 @@ open class ArchitectPluginExtension(val project: Project) { if (plsAddInjectables) { add("architecturyTransformerClasspath", "dev.architectury:architectury-injectables:$injectablesVersion") - add("architecturyTransformerClasspath", "net.fabricmc:fabric-loader:+")?.also { + add("architecturyTransformerClasspath", "net.fabricmc:fabric-loader:+")?.also { it as ModuleDependency it.isTransitive = false }