Files
Ktor_Server_Demo/build.gradle.kts
T
2026-10-09 19:00:39 +08:00

65 lines
2.2 KiB
Kotlin

plugins {
alias(libs.plugins.kotlin.jvm)
alias(libs.plugins.kotlin.serialization)
alias(ktorLibs.plugins.ktor)
}
group = "io.github.sor2171"
version = "1.0.0-SNAPSHOT"
application {
mainClass = "io.ktor.server.cio.EngineMain"
}
kotlin {
jvmToolchain(21)
}
dependencies {
// Ktor Core & Features
implementation(ktorLibs.server.cio)
implementation(ktorLibs.server.config.yaml)
implementation(ktorLibs.server.core)
implementation(ktorLibs.server.websockets)
implementation("io.ktor:ktor-server-content-negotiation:3.6.0")
implementation("io.ktor:ktor-serialization-kotlinx-json:3.6.0")
implementation("io.ktor:ktor-server-cors:3.6.0")
implementation("io.ktor:ktor-server-auth:3.6.0")
implementation("io.ktor:ktor-server-auth-jwt:3.6.0")
implementation("io.ktor:ktor-server-status-pages:3.6.0")
implementation("io.ktor:ktor-server-request-validation:3.6.0")
// Serialization & Datetime & Kotlin
implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:1.7.1")
implementation("org.jetbrains.kotlinx:kotlinx-datetime:0.6.0")
implementation("org.jetbrains.kotlin:kotlin-reflect")
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.10.1")
// Security & JWT (对应 Spring Boot Security & java-jwt)
implementation("com.auth0:java-jwt:4.4.0")
implementation("at.favre.lib:bcrypt:0.10.2")
// Database: MySQL / MariaDB & Exposed ORM & HikariCP
implementation("com.mysql:mysql-connector-j:9.2.0")
implementation("org.mariadb.jdbc:mariadb-java-client:3.5.9")
implementation("com.zaxxer:HikariCP:5.1.0")
implementation("org.jetbrains.exposed:exposed-core:0.55.0")
implementation("org.jetbrains.exposed:exposed-jdbc:0.55.0")
implementation("org.jetbrains.exposed:exposed-dao:0.55.0")
implementation("org.jetbrains.exposed:exposed-kotlin-datetime:0.55.0")
// Mail (对应 Spring Boot Starter Mail)
implementation("org.eclipse.angus:jakarta.mail:2.0.3")
// Redis
implementation("io.lettuce:lettuce-core:6.3.2.RELEASE")
// RabbitMQ
implementation("com.rabbitmq:amqp-client:5.34.0")
// Logging
implementation(libs.logback.classic)
testImplementation(kotlin("test"))
testImplementation(ktorLibs.server.testHost)
}