cloudstream/server/build.gradle.kts
2026-01-22 15:25:09 +01:00

59 lines
1.7 KiB
Kotlin

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<KotlinJvmCompile> {
compilerOptions {
jvmTarget.set(JvmTarget.JVM_11)
freeCompilerArgs.add("-opt-in=com.lagradost.cloudstream3.Prerelease")
}
}
tasks.named<Tar>("distTar") {
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
}
tasks.named<Zip>("distZip") {
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
}