Files
qr-attendance-demo/build.gradle.kts
T
2024-08-15 00:23:35 +07:00

77 lines
2.0 KiB
Kotlin

plugins {
java
idea
id("com.google.osdetector") version "1.7.3"
id("io.spring.dependency-management") version "1.1.6"
id("org.springframework.boot") version "3.3.2"
}
val ngrokVersion = "1.1.0"
val springCloudVersion by extra("2023.0.3")
group = "io.github.tiennm99"
version = "0.0.1-SNAPSHOT"
java {
toolchain {
languageVersion = JavaLanguageVersion.of(21)
}
}
idea {
module {
isDownloadJavadoc = true
isDownloadSources = true
}
}
configurations {
compileOnly {
extendsFrom(configurations.annotationProcessor.get())
}
}
repositories {
mavenCentral()
}
dependencies {
annotationProcessor("org.projectlombok:lombok")
compileOnly("org.projectlombok:lombok")
implementation("com.google.zxing:core:3.5.3")
implementation("com.google.zxing:javase:3.5.3")
implementation("com.ngrok:ngrok-java:${ngrokVersion}")
implementation("com.ngrok:ngrok-java-native:${ngrokVersion}:${osdetector.classifier}")
implementation("org.apache.poi:poi-ooxml:5.3.0")
implementation("org.springframework.boot:spring-boot-starter")
implementation("org.springframework.boot:spring-boot-starter-thymeleaf")
implementation("org.springframework.boot:spring-boot-starter-web")
testImplementation("org.springframework.boot:spring-boot-starter-test")
testRuntimeOnly("org.junit.platform:junit-platform-launcher")
}
dependencyManagement {
imports {
mavenBom("org.springframework.cloud:spring-cloud-dependencies:$springCloudVersion")
}
}
tasks.withType<Test> {
useJUnitPlatform()
}
tasks.withType<JavaCompile> {
sourceCompatibility = JavaVersion.VERSION_21.toString()
targetCompatibility = JavaVersion.VERSION_21.toString()
}
tasks.jar {
manifest {
attributes["Main-Class"] = "io.github.tiennm99.qrattendance.QrAttendanceApplication"
}
from(configurations.runtimeClasspath.get().map { if (it.isDirectory) it else zipTree(it) })
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
}