From d40cc3a3f1b01e4b51fb58a81f0d2f80e35b14e1 Mon Sep 17 00:00:00 2001 From: shedaniel Date: Mon, 10 May 2021 23:23:34 +0800 Subject: [PATCH] Add "architectury.common.marker" to common remapJar Signed-off-by: shedaniel --- .../architect/plugin/ArchitectPluginExtension.kt | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/main/kotlin/me/shedaniel/architect/plugin/ArchitectPluginExtension.kt b/src/main/kotlin/me/shedaniel/architect/plugin/ArchitectPluginExtension.kt index ecca5aa..ad20d7d 100644 --- a/src/main/kotlin/me/shedaniel/architect/plugin/ArchitectPluginExtension.kt +++ b/src/main/kotlin/me/shedaniel/architect/plugin/ArchitectPluginExtension.kt @@ -3,6 +3,7 @@ package me.shedaniel.architect.plugin import me.shedaniel.architectury.transformer.Transformer +import me.shedaniel.architectury.transformer.input.OpenedOutputInterface import me.shedaniel.architectury.transformer.transformers.* import net.fabricmc.loom.LoomGradleExtension import net.fabricmc.loom.task.RemapJarTask @@ -22,6 +23,7 @@ open class ArchitectPluginExtension(val project: Project) { var injectablesVersion = "1.0.8" var minecraft = "" var injectInjectables = true + var addCommonMarker = true private val transforms = mutableMapOf() private var transformedLoom = false private val agentFile by lazy { @@ -245,6 +247,19 @@ open class ArchitectPluginExtension(val project: Project) { it.archiveClassifier.set("") it.input.set(jarTask.archiveFile) it.dependsOn(jarTask) + it.doLast { _ -> + if (addCommonMarker) { + val output = it.archiveFile.get().asFile + + try { + OpenedOutputInterface.ofJar(output.toPath()).use { inter -> + inter.addFile("architectury.common.marker", "") + } + } catch (t: Throwable) { + project.logger.warn("Failed to add architectury.common.marker to ${output.absolutePath}") + } + } + } } as RemapJarTask if (settings.forgeEnabled) {