buildscript { repositories { jcenter() maven { url "https://plugins.gradle.org/m2/" } } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath "com.github.jengelman.gradle.plugins:shadow:5.2.0" classpath "org.koin:koin-gradle-plugin:$koin_version" } } tasks.withType(JavaCompile) { sourceCompatibility = JavaVersion.VERSION_11 targetCompatibility = JavaVersion.VERSION_11 } apply plugin: 'kotlin' apply plugin: "com.github.johnrengelman.shadow" apply plugin: 'application' apply plugin: 'koin' group 'com.kmalbz' version '0.0.1' mainClassName = "io.ktor.server.netty.EngineMain" sourceSets { main.kotlin.srcDirs = main.java.srcDirs = ['src'] test.kotlin.srcDirs = test.java.srcDirs = ['test'] main.resources.srcDirs = ['resources'] test.resources.srcDirs = ['testresources'] } repositories { mavenLocal() jcenter() maven { url 'https://kotlin.bintray.com/ktor' } maven { url 'https://repo.maven.apache.org/maven2' name 'Maven Central' } } dependencies { compile 'org.postgresql:postgresql:42.2.23' compile 'org.jetbrains.exposed:exposed-core:0.33.1' compile 'org.jetbrains.exposed:exposed-dao:0.33.1' compile 'org.jetbrains.exposed:exposed-jdbc:0.33.1' compile 'org.jetbrains.exposed:exposed-java-time:0.33.1' compile 'com.zaxxer:HikariCP:5.0.0' implementation "org.koin:koin-ktor:$koin_version" implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" implementation "io.ktor:ktor-server-netty:$ktor_version" implementation "ch.qos.logback:logback-classic:$logback_version" implementation "io.ktor:ktor-server-core:$ktor_version" implementation "io.ktor:ktor-gson:$ktor_version" implementation "io.ktor:ktor-server-host-common:$ktor_version" implementation "io.ktor:ktor-client-core:$ktor_version" implementation "io.ktor:ktor-client-core-jvm:$ktor_version" implementation "io.ktor:ktor-client-apache:$ktor_version" implementation "io.ktor:ktor-auth:$ktor_version" } kotlin.experimental.coroutines = 'enable' tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all { kotlinOptions { jvmTarget = "11" } } shadowJar { baseName = 'sample-service' classifier = null version = null }