From fbc5cee300885ba16cc9bb8c6b4b6a343c178eb4 Mon Sep 17 00:00:00 2001 From: Julian Krings Date: Tue, 8 Jul 2025 00:22:31 +0200 Subject: [PATCH] if it still doesn't work, idk what will --- build.gradle.kts | 1 - buildSrc/src/main/kotlin/ApiGenerator.kt | 25 ++++++++++++++---------- 2 files changed, 15 insertions(+), 11 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index f06c0383d..d3cfd5fee 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -30,7 +30,6 @@ buildscript { plugins { java `java-library` - `maven-publish` id("com.gradleup.shadow") version "8.3.6" id("de.undercouch.download") version "5.0.1" id("xyz.jpenilla.run-paper") version "2.3.1" diff --git a/buildSrc/src/main/kotlin/ApiGenerator.kt b/buildSrc/src/main/kotlin/ApiGenerator.kt index b526a1379..a4138269f 100644 --- a/buildSrc/src/main/kotlin/ApiGenerator.kt +++ b/buildSrc/src/main/kotlin/ApiGenerator.kt @@ -14,15 +14,20 @@ import java.util.jar.JarOutputStream class ApiGenerator : Plugin { override fun apply(target: Project): Unit = with(target) { + plugins.apply("maven-publish") val task = tasks.register("irisApi", GenerateApiTask::class.java) - extensions.findByType(PublishingExtension::class.java)!! - .publications - .create("maven", MavenPublication::class.java) { - it.groupId = group.toString() - it.artifactId = name + extensions.findByType(PublishingExtension::class.java)!!.apply { + repositories.maven { + it.name = "deployDir" + it.url = targetDirectory.toURI() + } + + publications.create("maven", MavenPublication::class.java) { + it.groupId = name it.version = version.toString() it.artifact(task) } + } } } @@ -45,7 +50,7 @@ abstract class GenerateApiTask : DefaultTask() { .asFile @OutputFile - val outputFile: File = targetDirectory().resolve(inputFile.name) + val outputFile: File = project.targetDirectory.resolve(inputFile.name) @TaskAction fun generate() { @@ -72,11 +77,11 @@ abstract class GenerateApiTask : DefaultTask() { } } } +} - fun targetDirectory(): File { - val dir = System.getenv("DEPLOY_DIR") ?: return project.layout.buildDirectory.dir("api").get().asFile - return File(dir) - } +val Project.targetDirectory: File get() { + val dir = System.getenv("DEPLOY_DIR") ?: return project.layout.buildDirectory.dir("api").get().asFile + return File(dir) } private class MethodClearingVisitor(