import org.gradle.api.JavaVersion import org.gradle.api.file.DuplicatesStrategy import org.gradle.jvm.toolchain.JavaLanguageVersion import org.gradle.api.tasks.bundling.Tar import org.gradle.api.tasks.bundling.Zip import org.jetbrains.kotlin.gradle.dsl.JvmTarget import org.jetbrains.kotlin.gradle.tasks.KotlinJvmCompile plugins { application alias(libs.plugins.kotlin.jvm) } kotlin { jvmToolchain(libs.versions.jdkToolchain.get().toInt()) } java { toolchain { languageVersion.set(JavaLanguageVersion.of(libs.versions.jdkToolchain.get().toInt())) } sourceCompatibility = JavaVersion.VERSION_11 targetCompatibility = JavaVersion.VERSION_11 } dependencies { implementation(project(":library")) implementation(libs.kotlinx.coroutines.core) implementation(libs.dex2jar) implementation(libs.nicehttp) implementation(libs.jackson.module.kotlin) implementation(libs.ktor.server.call.logging) implementation(libs.ktor.server.content.negotiation) implementation(libs.ktor.server.core) implementation(libs.ktor.server.cors) implementation(libs.ktor.server.netty) implementation(libs.ktor.server.status.pages) implementation(libs.ktor.serialization.jackson) runtimeOnly(libs.logback.classic) } application { mainClass.set("com.lagradost.cloudstream3.ServerKt") } tasks.withType { compilerOptions { jvmTarget.set(JvmTarget.JVM_11) freeCompilerArgs.add("-opt-in=com.lagradost.cloudstream3.Prerelease") } } tasks.named("distTar") { duplicatesStrategy = DuplicatesStrategy.EXCLUDE } tasks.named("distZip") { duplicatesStrategy = DuplicatesStrategy.EXCLUDE }