From 7985db6670b231bade3f6956a11f09e0063d9a9f Mon Sep 17 00:00:00 2001 From: Wagyourtail Date: Sat, 11 May 2024 21:46:08 -0500 Subject: [PATCH] better error wrapping --- .../xyz/wagyourtail/jvmdg/gradle/task/DowngradeJar.kt | 9 ++++----- .../kotlin/xyz/wagyourtail/jvmdg/gradle/task/ShadeAPI.kt | 9 ++++----- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/gradle-plugin/src/main/kotlin/xyz/wagyourtail/jvmdg/gradle/task/DowngradeJar.kt b/gradle-plugin/src/main/kotlin/xyz/wagyourtail/jvmdg/gradle/task/DowngradeJar.kt index f7e38184..bff9a6eb 100644 --- a/gradle-plugin/src/main/kotlin/xyz/wagyourtail/jvmdg/gradle/task/DowngradeJar.kt +++ b/gradle-plugin/src/main/kotlin/xyz/wagyourtail/jvmdg/gradle/task/DowngradeJar.kt @@ -38,7 +38,8 @@ abstract class DowngradeJar @Inject constructor(@Internal val jvmdg: JVMDowngrad fun doDowngrade() { val tempOutput = temporaryDir.resolve("downgradedInput.jar") tempOutput.deleteIfExists() - val result = project.javaexec { + + project.javaexec { it.mainClass.set("xyz.wagyourtail.jvmdg.compile.ZipDowngrader") it.args = listOf( jvToOpc(downgradeTo).toString(), @@ -49,10 +50,8 @@ abstract class DowngradeJar @Inject constructor(@Internal val jvmdg: JVMDowngrad it.workingDir = temporaryDir it.classpath = jvmdg.core it.jvmArgs = listOf("-Djvmdg.java-api=${jvmdg.api.resolve().first { it.extension == "jar" }.absolutePath}") - } - if (result.exitValue != 0) { - throw Exception("Failed to downgrade jar") - } + }.assertNormalExitValue().rethrowFailure() + from(project.zipTree(tempOutput)) copy() } diff --git a/gradle-plugin/src/main/kotlin/xyz/wagyourtail/jvmdg/gradle/task/ShadeAPI.kt b/gradle-plugin/src/main/kotlin/xyz/wagyourtail/jvmdg/gradle/task/ShadeAPI.kt index b096ac4b..d945eeee 100644 --- a/gradle-plugin/src/main/kotlin/xyz/wagyourtail/jvmdg/gradle/task/ShadeAPI.kt +++ b/gradle-plugin/src/main/kotlin/xyz/wagyourtail/jvmdg/gradle/task/ShadeAPI.kt @@ -37,7 +37,8 @@ abstract class ShadeAPI @Inject constructor(@Internal val jvmdg: JVMDowngraderEx fun doShade() { val tempOutput = temporaryDir.resolve("downgradedInput.jar") tempOutput.deleteIfExists() - val result = project.javaexec { + + project.javaexec { it.mainClass.set("xyz.wagyourtail.jvmdg.compile.ApiShader") it.args = listOf( jvmdg.api.resolve().first { it.extension == "jar" }.absolutePath, @@ -47,10 +48,8 @@ abstract class ShadeAPI @Inject constructor(@Internal val jvmdg: JVMDowngraderEx ) it.workingDir = temporaryDir it.classpath = jvmdg.core - } - if (result.exitValue != 0) { - throw Exception("Failed to downgrade jar") - } + }.assertNormalExitValue().rethrowFailure() + from(project.zipTree(tempOutput)) copy() }