Separate plugins for different Gradle APIs

This commit is contained in:
Tad Fisher
2024-06-04 13:11:18 -07:00
parent a935331795
commit 85cebdd557
40 changed files with 1258 additions and 3993 deletions

View File

@@ -12,13 +12,14 @@ dependencies {
implementation(project(":model"))
implementation(libs.clikt)
implementation(libs.gradle.toolingApi)
implementation(libs.kotlin.stdlib)
implementation(libs.kotlinx.coroutines.core)
implementation(libs.serialization.json)
runtimeOnly(libs.slf4j.simple)
"share"(project(":plugin", configuration = "shadow")) {
isTransitive = false
}
"share"(project(":plugin:base", configuration = "shadow"))
"share"(project(":plugin:gradle80", configuration = "shadow"))
"share"(project(":plugin:gradle81", configuration = "shadow"))
testImplementation(libs.kotest.assertions)
testImplementation(libs.kotest.runner)
@@ -37,7 +38,6 @@ application {
applicationDistribution
.from(configurations.named("share"))
.into("share")
.rename("plugin.*\\.jar", "plugin.jar")
}
java {

View File

@@ -1,6 +1,14 @@
import org.gradle.util.GradleVersion
initscript {
dependencies {
classpath files("plugin.jar")
if (GradleVersion.current() >= GradleVersion.version("8.1")) {
classpath files("plugin-gradle81.jar")
} else if (GradleVersion.current() >= GradleVersion.version("8.0")) {
classpath files("plugin-gradle80.jar")
} else {
classpath files("plugin-base.jar")
}
}
}