Code: Select all
plugins {
id 'java'
id 'org.springframework.boot' version '3.4.0'
id 'io.spring.dependency-management' version '1.1.7'
id 'org.flywaydb.flyway' version '11.1.0'
}
group = 'com.auth2'
version = '0.0.1-SNAPSHOT'
java {
toolchain {
languageVersion = JavaLanguageVersion.of(17)
}
}
repositories {
mavenCentral()
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.apache.commons:commons-lang3:3.17.0'
implementation 'org.flywaydb:flyway-core:11.1.0'
implementation 'org.flywaydb:flyway-mysql:11.1.0'
implementation 'com.h2database:h2'
implementation 'com.mysql:mysql-connector-j:9.1.0'
runtimeOnly 'org.springframework.boot:spring-boot-devtools'
// Lombok dependencies
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
}
def props = new Properties()
file("src/main/resources/application.properties").withInputStream {
props.load(it)
}
flyway {
driver = props['spring.datasource.driver-class-name'] ?: 'com.mysql.cj.jdbc.Driver'
url = props['spring.flyway.url']
user = props['spring.flyway.user']
password = props['spring.flyway.password'] ?: ""
locations = [props['spring.flyway.locations'] ?: "classpath:db/migration"]
}
tasks.named('test') {
useJUnitPlatform()
}
