60 lines
1.3 KiB
Kotlin
60 lines
1.3 KiB
Kotlin
plugins {
|
|
kotlin("jvm")
|
|
alias(libs.plugins.ktor)
|
|
application
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
// Ktor
|
|
implementation(libs.ktor.server.core)
|
|
implementation(libs.ktor.server.netty)
|
|
|
|
// JSON
|
|
implementation(libs.ktor.serialization.kotlinx.json)
|
|
|
|
// Status Pages / Exception Handling
|
|
implementation(libs.ktor.server.status.pages)
|
|
|
|
// Logging
|
|
implementation(libs.ktor.server.logging)
|
|
implementation(libs.logback)
|
|
implementation(libs.ktor.server.swagger)
|
|
|
|
// Testing
|
|
testImplementation(libs.ktor.server.test.host)
|
|
testImplementation(kotlin("test"))
|
|
|
|
// Websockets
|
|
implementation(libs.ktor.server.websockets)
|
|
|
|
// Swagger/OpenAPI
|
|
implementation(libs.ktor.server.openapi)
|
|
implementation(libs.ktor.server.routing.openapi)
|
|
implementation(libs.ktor.server.content.negotiation)
|
|
|
|
// General Use
|
|
implementation(libs.kotlinx.datetime)
|
|
|
|
implementation(project(":shared"))
|
|
implementation("ch.qos.logback:logback-classic:1.6.3")
|
|
|
|
}
|
|
|
|
application {
|
|
mainClass = "dev.geekback.dopewars.server.ServerKt"
|
|
}
|
|
//
|
|
//// Copy the JS+HTML from web to here
|
|
//tasks.processResources {
|
|
// dependsOn(":web:wasmJsBrowserProductionWebpack")
|
|
//
|
|
// from(project(":web")
|
|
// .layout
|
|
// .buildDirectory
|
|
// .dir("dist/js/productionExecutable"))
|
|
//}
|