spring-web-modules/api/build.gradle.kts

63 lines
1.7 KiB
Plaintext
Raw Normal View History

import java.io.ByteArrayOutputStream
plugins {
id("org.springframework.boot")
id("io.spring.dependency-management")
kotlin("jvm")
kotlin("plugin.spring")
kotlin("plugin.jpa")
}
val kotlinVersion = "1.7.22"
val springBootVersion = "3.0.0"
// find the last commit
fun getGitHashLastCommit(): String {
val stdout = ByteArrayOutputStream()
exec {
commandLine("git", "rev-parse", "HEAD")
standardOutput = stdout
}
return stdout.toString().trim()
}
springBoot {
buildInfo {
properties {
this.additional.put("commitId", getGitHashLastCommit())
this.additional.put("springBootVersion", springBootVersion)
this.additional.put("kotlinVersion", kotlinVersion)
}
}
}
dependencies {
// Spring Data JPA (Required for Database Layer)
implementation("org.springframework.boot:spring-boot-starter-data-jpa")
implementation("org.springframework.boot:spring-boot-starter-data-redis")
implementation("org.springframework.boot:spring-boot-starter-validation")
// Migrating from SpringDoc API (Swagger) for Support Spring Boot 3.x
implementation("org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.2")
// SPRING FRAMEWORK AND CORE
implementation("org.springframework.boot:spring-boot-starter-web")
implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
// Development Runtime
developmentOnly("org.springframework.boot:spring-boot-devtools")
implementation("org.jetbrains.kotlin:kotlin-reflect")
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
runtimeOnly("com.h2database:h2")
// runtimeOnly("org.postgresql:postgresql")
testImplementation("org.springframework.boot:spring-boot-starter-test")
}
tasks.withType<Test> {
useJUnitPlatform()
}