notes_backend/build.gradle.kts

67 lines
1.7 KiB
Plaintext

import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
id("org.springframework.boot") version "3.2.0"
id("io.spring.dependency-management") version "1.1.4"
kotlin("jvm") version "1.9.22"
kotlin("plugin.spring") version "1.9.22"
kotlin("plugin.jpa") version "1.9.22"
id("org.springdoc.openapi-gradle-plugin") version "1.8.0"
}
group = "com.kassaev"
version = "0.0.1-SNAPSHOT"
java {
sourceCompatibility = JavaVersion.VERSION_17
}
repositories {
mavenCentral()
}
dependencies {
implementation("org.springframework.boot:spring-boot-starter-web:3.2.1")
implementation("com.fasterxml.jackson.module:jackson-module-kotlin:2.16.1")
implementation("org.jetbrains.kotlin:kotlin-reflect:1.9.22")
compileOnly("org.projectlombok:lombok:1.18.30")
annotationProcessor("org.projectlombok:lombok:1.18.30")
implementation("org.springframework.boot:spring-boot-starter-security:3.2.1")
implementation("io.jsonwebtoken:jjwt-api:0.12.3")
implementation("io.jsonwebtoken:jjwt-impl:0.12.3")
implementation("io.jsonwebtoken:jjwt-jackson:0.12.3")
implementation("org.postgresql:postgresql:42.7.1")
implementation("org.springframework.boot:spring-boot-starter-data-jpa:3.2.1")
implementation("org.springdoc:springdoc-openapi-starter-webmvc-ui:2.3.0")
}
tasks.withType<KotlinCompile> {
kotlinOptions {
freeCompilerArgs += "-Xjsr305=strict"
jvmTarget = "17"
}
}
tasks.withType<Test> {
useJUnitPlatform()
}
//for gradlew clean generateOpenApiDocs
tasks {
forkedSpringBootRun {
doNotTrackState("See https://github.com/springdoc/springdoc-openapi-gradle-plugin/issues/102")
}
}
//for gradlew clean generateOpenApiDocs
val port = "${System.getenv("SPRING_PORT")}"
openApi {
apiDocsUrl.set("http://localhost:$port/v3/api-docs")
}