import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { id("org.springframework.boot") version "3.2.2" id("io.spring.dependency-management") version "1.1.4" id("com.vaadin") version "24.3.3" kotlin("jvm") version "1.9.22" kotlin("plugin.spring") version "1.9.22" kotlin("plugin.jpa") version "1.9.22" } group = "de.grimsi" version = "2.0.0-SNAPSHOT" java { sourceCompatibility = JavaVersion.VERSION_21 } configurations { compileOnly { extendsFrom(configurations.annotationProcessor.get()) } } repositories { mavenCentral() maven { name = "Vaadin Addons" url = uri("https://maven.vaadin.com/vaadin-addons") } } extra["vaadinVersion"] = "24.3.3" dependencies { implementation("org.springframework.boot:spring-boot-starter-actuator") implementation("org.springframework.boot:spring-boot-starter-data-jpa") implementation("org.springframework.boot:spring-boot-starter-oauth2-client") // Frontend implementation("org.springframework.boot:spring-boot-starter-security") implementation("org.springframework.boot:spring-boot-starter-web") implementation("com.fasterxml.jackson.module:jackson-module-kotlin") implementation("com.vaadin:vaadin-spring-boot-starter") implementation("com.github.mvysny.karibudsl:karibu-dsl-v23:2.1.0") implementation("com.github.mvysny.karibu-tools:karibu-tools-23:0.19") implementation("com.flowingcode.addons:font-awesome-iron-iconset:5.2.2") implementation("org.jetbrains.kotlin:kotlin-reflect") // Development developmentOnly("org.springframework.boot:spring-boot-devtools") runtimeOnly("com.h2database:h2") runtimeOnly("io.micrometer:micrometer-registry-prometheus") annotationProcessor("org.springframework.boot:spring-boot-configuration-processor") testImplementation("org.springframework.boot:spring-boot-starter-test") testImplementation("org.springframework.security:spring-security-test") } dependencyManagement { imports { mavenBom("com.vaadin:vaadin-bom:${property("vaadinVersion")}") } } tasks.withType { kotlinOptions { freeCompilerArgs += "-Xjsr305=strict" jvmTarget = "21" } } tasks.withType { useJUnitPlatform() }