plugins { id 'org.jetbrains.kotlin.jvm' version '2.2.21' id 'org.jetbrains.kotlin.plugin.spring' version '2.2.21' id 'org.springframework.boot' version '4.0.1' id 'io.spring.dependency-management' version '1.1.7' id 'org.hibernate.orm' version '7.2.0.Final' id 'org.graalvm.buildtools.native' version '0.11.3' id 'org.jetbrains.kotlin.plugin.jpa' version '2.2.21' } group = 'com.quantbench' version = '0.0.1-SNAPSHOT' description = 'balance' java { toolchain { languageVersion = JavaLanguageVersion.of(24) } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-h2console' implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-webmvc' implementation 'org.jetbrains.kotlin:kotlin-reflect' implementation 'tools.jackson.module:jackson-module-kotlin' developmentOnly 'org.springframework.boot:spring-boot-devtools' runtimeOnly 'com.h2database:h2' runtimeOnly 'org.postgresql:postgresql' testImplementation 'org.springframework.boot:spring-boot-starter-data-jpa-test' testImplementation 'org.springframework.boot:spring-boot-starter-webmvc-test' testImplementation 'org.jetbrains.kotlin:kotlin-test-junit5' testRuntimeOnly 'org.junit.platform:junit-platform-launcher' } kotlin { compilerOptions { freeCompilerArgs.addAll '-Xjsr305=strict', '-Xannotation-default-target=param-property' } } hibernate { enhancement { enableAssociationManagement = true } } allOpen { annotation 'jakarta.persistence.Entity' annotation 'jakarta.persistence.MappedSuperclass' annotation 'jakarta.persistence.Embeddable' } tasks.named('test') { useJUnitPlatform() }