All Downloads are FREE. Search and download functionalities are using the official Maven repository.

kotlin-server.libraries.ktor.build.gradle.mustache Maven / Gradle / Ivy

There is a newer version: 7.7.0
Show newest version
group "{{groupId}}"
version "{{artifactVersion}}"
{{^omitGradleWrapper}}

wrapper {
    gradleVersion = "7.4.2"
    distributionUrl = "https://services.gradle.org/distributions/gradle-$gradleVersion-all.zip"
}
{{/omitGradleWrapper}}

buildscript {
    ext.kotlin_version = "1.7.20"
    ext.ktor_version = "2.2.1"
    ext.shadow_version = "6.1.0"

    repositories {
        maven { url "https://repo1.maven.org/maven2" }
        maven { url "https://plugins.gradle.org/m2/" }
    }
    dependencies {
        classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version")
        classpath("com.github.jengelman.gradle.plugins:shadow:$shadow_version")
    }
}

apply plugin: "java"
apply plugin: "kotlin"
apply plugin: "application"

mainClassName = "io.ktor.server.netty.DevelopmentEngine"

// Initialization order with shadow 2.0.1 and Gradle 6.9 is weird.
// See https://github.com/johnrengelman/shadow/issues/336#issuecomment-355402508
apply plugin: "com.github.johnrengelman.shadow"

sourceCompatibility = 1.8

compileKotlin {
    kotlinOptions.jvmTarget = "1.8"
}

compileTestKotlin {
    kotlinOptions.jvmTarget = "1.8"
}

shadowJar {
    baseName = "{{artifactId}}"
    classifier = null
    version = null
}

repositories {
    maven { setUrl("https://repo1.maven.org/maven2") }
    maven { setUrl("https://dl.bintray.com/kotlin/ktor") }
    maven { setUrl("https://dl.bintray.com/kotlin/kotlinx") }
}

dependencies {
    implementation("org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version")
    implementation("ch.qos.logback:logback-classic:1.2.9")
{{#hasAuthMethods}}
    implementation("com.typesafe:config:1.4.1")
{{/hasAuthMethods}}
    implementation("io.ktor:ktor-server-auth:$ktor_version")
{{#hasAuthMethods}}
    implementation("io.ktor:ktor-client-apache:$ktor_version")
{{/hasAuthMethods}}
{{#featureAutoHead}}
    implementation("io.ktor:ktor-server-auto-head-response:$ktor_version")
{{/featureAutoHead}}
    implementation("io.ktor:ktor-server-default-headers:$ktor_version")
    implementation("io.ktor:ktor-server-content-negotiation:$ktor_version")
    implementation("io.ktor:ktor-serialization-gson:$ktor_version")
{{#featureResources}}
    implementation("io.ktor:ktor-server-resources:$ktor_version")
{{/featureResources}}
{{#featureHSTS}}
    implementation("io.ktor:ktor-server-hsts:$ktor_version")
{{/featureHSTS}}
{{#featureCORS}}
    implementation("io.ktor:ktor-server-cors:$ktor_version")
{{/featureCORS}}
{{#featureConditionalHeaders}}
    implementation("io.ktor:ktor-server-conditional-headers:$ktor_version")
{{/featureConditionalHeaders}}
{{#featureCompression}}
    implementation("io.ktor:ktor-server-compression:$ktor_version")
{{/featureCompression}}
{{#featureMetrics}}
    implementation("io.dropwizard.metrics:metrics-core:4.1.18")
    implementation("io.ktor:ktor-server-metrics:$ktor_version")
{{/featureMetrics}}
    implementation("io.ktor:ktor-server-netty:$ktor_version")

    testImplementation("junit:junit:4.13.2")
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy