libs.versions.toml 4.52 KB
[versions]
kotlin = "1.9.24"
springBoot = "3.3.4"
springDependencyManagement = "1.1.6"
jakartaValidation = "3.1.0"
postgres = "42.7.4"
hibernate = "6.5.3.Final"
liquibase = "4.29.2"
pf4j = "3.12.0"
flowable = "7.0.1"
jasperreports = "6.21.3"
springdoc = "2.6.0"
icu4j = "75.1"
jackson = "2.18.0"
junitJupiter = "5.11.2"
mockk = "1.13.13"
testcontainers = "1.20.2"
assertk = "0.28.1"

[libraries]
# Spring Boot starters
spring-boot-starter = { module = "org.springframework.boot:spring-boot-starter", version.ref = "springBoot" }
spring-boot-starter-web = { module = "org.springframework.boot:spring-boot-starter-web", version.ref = "springBoot" }
spring-boot-starter-data-jpa = { module = "org.springframework.boot:spring-boot-starter-data-jpa", version.ref = "springBoot" }
spring-boot-starter-aop = { module = "org.springframework.boot:spring-boot-starter-aop", version.ref = "springBoot" }
spring-boot-starter-validation = { module = "org.springframework.boot:spring-boot-starter-validation", version.ref = "springBoot" }
spring-boot-starter-actuator = { module = "org.springframework.boot:spring-boot-starter-actuator", version.ref = "springBoot" }
spring-boot-starter-security = { module = "org.springframework.boot:spring-boot-starter-security", version.ref = "springBoot" }
spring-boot-starter-oauth2-resource-server = { module = "org.springframework.boot:spring-boot-starter-oauth2-resource-server", version.ref = "springBoot" }
spring-security-oauth2-jose = { module = "org.springframework.security:spring-security-oauth2-jose", version = "6.3.3" }
spring-boot-starter-test = { module = "org.springframework.boot:spring-boot-starter-test", version.ref = "springBoot" }
spring-security-test = { module = "org.springframework.security:spring-security-test", version = "6.3.3" }
bouncycastle = { module = "org.bouncycastle:bcprov-jdk18on", version = "1.78.1" }

# Kotlin
kotlin-stdlib = { module = "org.jetbrains.kotlin:kotlin-stdlib", version.ref = "kotlin" }
kotlin-reflect = { module = "org.jetbrains.kotlin:kotlin-reflect", version.ref = "kotlin" }
jackson-module-kotlin = { module = "com.fasterxml.jackson.module:jackson-module-kotlin", version.ref = "jackson" }
jackson-datatype-jsr310 = { module = "com.fasterxml.jackson.datatype:jackson-datatype-jsr310", version.ref = "jackson" }
jackson-dataformat-yaml = { module = "com.fasterxml.jackson.dataformat:jackson-dataformat-yaml", version.ref = "jackson" }

# Bytecode analysis
asm = { module = "org.ow2.asm:asm", version = "9.7.1" }

# Validation
jakarta-validation-api = { module = "jakarta.validation:jakarta.validation-api", version.ref = "jakartaValidation" }

# Persistence
postgres = { module = "org.postgresql:postgresql", version.ref = "postgres" }
liquibase-core = { module = "org.liquibase:liquibase-core", version.ref = "liquibase" }

# Plug-in framework
pf4j = { module = "org.pf4j:pf4j", version.ref = "pf4j" }
pf4j-spring = { module = "org.pf4j:pf4j-spring", version = "0.9.0" }

# Workflow (BPMN 2.0 process engine)
flowable-spring-boot-starter-process = { module = "org.flowable:flowable-spring-boot-starter-process", version.ref = "flowable" }

# Job scheduler (Quartz via Spring Boot starter)
spring-boot-starter-quartz = { module = "org.springframework.boot:spring-boot-starter-quartz", version.ref = "springBoot" }

# Reports (JasperReports PDF rendering)
jasperreports = { module = "net.sf.jasperreports:jasperreports", version.ref = "jasperreports" }

# OpenAPI / Swagger UI (runtime introspection of @RestController endpoints)
springdoc-openapi-starter-webmvc-ui = { module = "org.springdoc:springdoc-openapi-starter-webmvc-ui", version.ref = "springdoc" }

# i18n
icu4j = { module = "com.ibm.icu:icu4j", version.ref = "icu4j" }

# Testing
junit-jupiter = { module = "org.junit.jupiter:junit-jupiter", version.ref = "junitJupiter" }
mockk = { module = "io.mockk:mockk", version.ref = "mockk" }
assertk = { module = "com.willowtreeapps.assertk:assertk-jvm", version.ref = "assertk" }
testcontainers-postgres = { module = "org.testcontainers:postgresql", version.ref = "testcontainers" }
testcontainers-junit-jupiter = { module = "org.testcontainers:junit-jupiter", version.ref = "testcontainers" }

[plugins]
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
kotlin-spring = { id = "org.jetbrains.kotlin.plugin.spring", version.ref = "kotlin" }
kotlin-jpa = { id = "org.jetbrains.kotlin.plugin.jpa", version.ref = "kotlin" }
spring-boot = { id = "org.springframework.boot", version.ref = "springBoot" }
spring-dependency-management = { id = "io.spring.dependency-management", version.ref = "springDependencyManagement" }