sys-rest-api/build.gradle

56 lines
1.7 KiB
Groovy

plugins {
id 'java'
id 'org.springframework.boot' version '3.1.4'
id 'io.spring.dependency-management' version '1.1.4'
}
group = 'com.goi'
version = '0.0.1-SNAPSHOT'
description = 'System Configuration REST Api'
java {
toolchain {
languageVersion = JavaLanguageVersion.of(21)
}
}
repositories {
mavenCentral()
// Required to resolve the local SNAPSHOT dependency
// 'template:layered-architecture-template:1.0.0-SNAPSHOT'
mavenLocal()
}
dependencies {
// Spring Boot starters (versions managed by the Spring Boot BOM)
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-security'
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.springframework.boot:spring-boot-starter-validation'
// OpenAPI / Swagger UI
implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.1.0'
// JWT (jjwt) — api at compile time, impl + jackson at runtime
implementation 'io.jsonwebtoken:jjwt-api:0.11.5'
runtimeOnly 'io.jsonwebtoken:jjwt-impl:0.11.5'
runtimeOnly 'io.jsonwebtoken:jjwt-jackson:0.11.5'
// PostgreSQL driver
runtimeOnly 'org.postgresql:postgresql'
// Lombok (compile-only + annotation processor; excluded from the boot jar)
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
testCompileOnly 'org.projectlombok:lombok'
testAnnotationProcessor 'org.projectlombok:lombok'
// Test
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testImplementation 'org.springframework.security:spring-security-test'
}
tasks.named('test') {
useJUnitPlatform()
}