plugins { id 'org.jetbrains.kotlin.jvm' version '1.9.25' id 'org.jetbrains.kotlin.plugin.spring' version '1.9.25' id 'org.springframework.boot' version '3.5.7' id 'io.spring.dependency-management' version '1.1.7' id 'org.flywaydb.flyway' version '10.15.2' } group = 'com.test' version = '0.0.1-SNAPSHOT' description = 'Demo project for Spring Boot' archivesBaseName = "app" java { toolchain { languageVersion = JavaLanguageVersion.of(21) } } repositories { mavenCentral() } dependencies { implementation ('org.springframework.boot:spring-boot-starter-web') { exclude group: 'org.springframework.boot', module: 'spring-boot-starter-tomcat' } implementation 'org.springframework.boot:spring-boot-starter-undertow' implementation 'org.springframework.boot:spring-boot-starter-security' implementation 'org.springframework.boot:spring-boot-starter-oauth2-client' implementation 'org.springframework.boot:spring-boot-starter-oauth2-resource-server' implementation 'com.fasterxml.jackson.module:jackson-module-kotlin' implementation 'org.jetbrains.kotlin:kotlin-reflect' implementation("org.springframework.boot:spring-boot-starter-actuator:3.5.7") implementation("org.springframework.boot:spring-boot-starter-data-jpa") implementation("org.flywaydb:flyway-database-postgresql:10.10.0") runtimeOnly("org.postgresql:postgresql") testImplementation 'org.springframework.boot:spring-boot-starter-test' testImplementation 'org.jetbrains.kotlin:kotlin-test-junit5' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' } kotlin { compilerOptions { freeCompilerArgs.addAll '-Xjsr305=strict' } } tasks.named('test') { useJUnitPlatform() } flyway { url = 'jdbc:postgresql://localhost:5432/app_db' user = 'root' password = 'root' }