plugins { kotlin("jvm") kotlin("plugin.spring") kotlin("plugin.jpa") id("org.springframework.boot") id("io.spring.dependency-management") } group = "space.nstart.pcp" version = "0.0.1" java { toolchain { languageVersion = JavaLanguageVersion.of((property("versions.java") as String).toInt()) } } dependencies { // Общие типы/слой толерантности времени; тянет spring-boot-starter-web (servlet/MVC), // из-за чего приложение запускается как сервлетное (MVC), а не WebFlux. implementation(project(":libs:pcp-types-lib")) // Spring Boot // starter-webflux оставлен только ради WebClient (внешние HTTP-клиенты, см. integration/api); // тип приложения — сервлетный (MVC), т.к. в classpath есть spring-webmvc из starter-web выше. implementation("org.springframework.boot:spring-boot-starter-webflux") implementation("org.springframework.boot:spring-boot-starter-actuator") runtimeOnly("io.micrometer:micrometer-registry-prometheus") implementation("org.springdoc:springdoc-openapi-starter-webmvc-ui:${property("versions.open-api")}") implementation("org.springframework.boot:spring-boot-starter-data-jpa") implementation("org.springframework.boot:spring-boot-starter-flyway") implementation("org.flywaydb:flyway-database-postgresql") implementation("org.springframework.boot:spring-boot-starter") implementation("io.camunda:camunda-spring-boot-4-starter:8.8.10") implementation("org.springframework.cloud:spring-cloud-starter-config") // Kafka implementation("org.springframework.boot:spring-boot-starter-kafka") // Jackson implementation("com.fasterxml.jackson.module:jackson-module-kotlin") implementation("com.fasterxml.jackson.datatype:jackson-datatype-jsr310") // Kotlin implementation("org.jetbrains.kotlin:kotlin-reflect") // Validation implementation("org.springframework.boot:spring-boot-starter-validation") runtimeOnly("org.postgresql:postgresql") // Test testImplementation("org.springframework.boot:spring-boot-starter-test") testImplementation("org.springframework.kafka:spring-kafka-test") } tasks.withType { useJUnitPlatform() } dependencyManagement { imports { mavenBom("org.springframework.cloud:spring-cloud-dependencies:${property("versions.spring.cloud")}") } }