fixing Web-App
This commit is contained in:
@@ -28,24 +28,18 @@ java {
|
||||
dependencies {
|
||||
// Stellt sicher, dass alle Versionen aus der zentralen BOM kommen.
|
||||
implementation(platform(projects.platform.platformBom))
|
||||
|
||||
// Stellt gemeinsame Abhängigkeiten wie Coroutines und Logging bereit.
|
||||
implementation(projects.platform.platformDependencies)
|
||||
|
||||
// Stellt Domänenobjekte und technische Utilities bereit.
|
||||
implementation(projects.core.coreUtils)
|
||||
|
||||
// Spring Security für OAuth2-Client-Funktionalität und JWT-Verarbeitung.
|
||||
implementation(libs.spring.boot.starter.oauth2.client)
|
||||
implementation(libs.spring.boot.starter.security)
|
||||
implementation(libs.spring.security.oauth2.jose)
|
||||
|
||||
// Bibliothek zur einfachen Handhabung von JWTs.
|
||||
implementation(libs.auth0.java.jwt)
|
||||
|
||||
// JSON-Serialization für konsistente API-Datenverarbeitung.
|
||||
implementation(libs.kotlinx.serialization.json)
|
||||
|
||||
// Stellt alle Test-Abhängigkeiten gebündelt bereit.
|
||||
testImplementation(projects.platform.platformTesting)
|
||||
}
|
||||
|
||||
@@ -23,39 +23,28 @@ springBoot {
|
||||
dependencies {
|
||||
// Stellt sicher, dass alle Versionen aus der zentralen BOM kommen.
|
||||
implementation(platform(projects.platform.platformBom))
|
||||
|
||||
// Stellt gemeinsame Abhängigkeiten bereit.
|
||||
implementation(projects.platform.platformDependencies)
|
||||
|
||||
// Nutzt die Client-Logik für die Kommunikation mit Keycloak.
|
||||
implementation(projects.infrastructure.auth.authClient)
|
||||
|
||||
// Spring Boot Starter für einen Web-Service.
|
||||
// OPTIMIERUNG: Verwendung des `spring-boot-essentials`-Bundles.
|
||||
implementation(libs.bundles.spring.boot.essentials)
|
||||
|
||||
// Spring Security für die Absicherung des Servers.
|
||||
implementation(libs.spring.boot.starter.security)
|
||||
implementation(libs.spring.boot.starter.oauth2.resource.server)
|
||||
|
||||
// Keycloak Admin Client zur Verwaltung von Benutzern und Realms.
|
||||
implementation(libs.keycloak.admin.client)
|
||||
|
||||
// API-Dokumentation mit OpenAPI/Swagger.
|
||||
implementation(libs.springdoc.openapi.starter.webmvc.ui)
|
||||
|
||||
// Monitoring und Metriken für Production-Readiness.
|
||||
implementation(libs.bundles.monitoring.client)
|
||||
|
||||
// JSON-Serialization für API-Responses.
|
||||
implementation(libs.kotlinx.serialization.json)
|
||||
|
||||
// Stellt alle Test-Abhängigkeiten gebündelt bereit.
|
||||
testImplementation(projects.platform.platformTesting)
|
||||
|
||||
// Testcontainers für Integration Tests
|
||||
testImplementation(libs.bundles.testcontainers)
|
||||
|
||||
// SLF4J provider for tests
|
||||
testImplementation(libs.logback.classic)
|
||||
testImplementation(libs.logback.core)
|
||||
|
||||
@@ -27,7 +27,6 @@ dependencies {
|
||||
api(platform(projects.platform.platformBom))
|
||||
// Stellt gemeinsame Abhängigkeiten wie Logging bereit und exportiert sie für Konsumenten der API.
|
||||
api(projects.platform.platformDependencies)
|
||||
|
||||
// Stellt Test-Abhängigkeiten bereit.
|
||||
testImplementation(projects.platform.platformTesting)
|
||||
}
|
||||
|
||||
@@ -26,14 +26,11 @@ java {
|
||||
dependencies {
|
||||
// Stellt sicher, dass alle Versionen aus der zentralen BOM kommen.
|
||||
api(platform(projects.platform.platformBom))
|
||||
|
||||
// Implementiert die provider-agnostische Caching-API.
|
||||
implementation(projects.infrastructure.cache.cacheApi)
|
||||
|
||||
// OPTIMIERUNG: Verwendung des `redis-cache`-Bundles aus libs.versions.toml.
|
||||
// Dieses Bundle enthält Spring Data Redis, Lettuce und Jackson-Module.
|
||||
implementation(libs.bundles.redis.cache)
|
||||
|
||||
// Stellt alle Test-Abhängigkeiten gebündelt bereit.
|
||||
testImplementation(projects.platform.platformTesting)
|
||||
testImplementation(libs.bundles.testing.jvm)
|
||||
|
||||
@@ -27,17 +27,14 @@ dependencies {
|
||||
// === Core Dependencies ===
|
||||
// Stellt sicher, dass alle Versionen aus der zentralen BOM kommen
|
||||
implementation(platform(projects.platform.platformBom))
|
||||
|
||||
// Abhängigkeit zu den Core-Modulen, um auf Domänenobjekte (Events)
|
||||
// und technische Hilfsklassen zugreifen zu können
|
||||
api(projects.core.coreDomain)
|
||||
implementation(projects.core.coreUtils)
|
||||
|
||||
// === Test Dependencies ===
|
||||
// Stellt alle Test-Abhängigkeiten gebündelt bereit
|
||||
testImplementation(projects.platform.platformTesting)
|
||||
testImplementation(libs.bundles.testing.jvm)
|
||||
|
||||
// Für erweiterte Test-Unterstützung bei API-Tests
|
||||
testImplementation(libs.kotlinx.coroutines.test)
|
||||
}
|
||||
@@ -46,7 +43,6 @@ dependencies {
|
||||
// Optimiert die Test-Ausführung
|
||||
tasks.test {
|
||||
useJUnitPlatform()
|
||||
|
||||
// Parallelisierung für bessere Performance
|
||||
maxParallelForks = (Runtime.getRuntime().availableProcessors() / 2).coerceAtLeast(1)
|
||||
}
|
||||
|
||||
@@ -20,31 +20,24 @@ dependencies {
|
||||
// === Core Dependencies ===
|
||||
// Stellt sicher, dass alle Versionen aus der zentralen BOM kommen
|
||||
implementation(platform(projects.platform.platformBom))
|
||||
|
||||
// Implementiert die provider-agnostische Event-Store-API
|
||||
api(projects.infrastructure.eventStore.eventStoreApi)
|
||||
|
||||
// Benötigt Zugriff auf Core-Module für Domänen-Events und Utilities
|
||||
implementation(projects.core.coreDomain)
|
||||
implementation(projects.core.coreUtils)
|
||||
|
||||
// === Redis & Spring Dependencies ===
|
||||
// OPTIMIERUNG: Wiederverwendung des `redis-cache`-Bundles, da es die
|
||||
// gleichen Technologien (Spring Data Redis, Lettuce, Jackson) verwendet
|
||||
implementation(libs.bundles.redis.cache)
|
||||
|
||||
// Stellt Jakarta Annotations bereit (z. B. @PostConstruct), die von Spring verwendet werden
|
||||
implementation(libs.jakarta.annotation.api)
|
||||
|
||||
// Für Kotlin-spezifische Coroutines-Integration mit Spring
|
||||
implementation(libs.kotlinx.coroutines.reactor)
|
||||
|
||||
// === Test Dependencies ===
|
||||
// Fügt JUnit, Mockk, AssertJ etc. für die Tests hinzu
|
||||
testImplementation(projects.platform.platformTesting)
|
||||
testImplementation(libs.bundles.testing.jvm)
|
||||
testImplementation(libs.bundles.testcontainers)
|
||||
|
||||
// Zusätzliche Test-Dependencies für erweiterte Event-Store-Tests
|
||||
testImplementation(libs.kotlinx.serialization.json)
|
||||
testImplementation(libs.reactor.test)
|
||||
@@ -65,10 +58,8 @@ tasks.jar {
|
||||
// Optimiert die Test-Ausführung
|
||||
tasks.test {
|
||||
useJUnitPlatform()
|
||||
|
||||
// Verbesserte Test-Performance für Testcontainer
|
||||
systemProperty("testcontainers.reuse.enable", "true")
|
||||
|
||||
// Parallelisierung für bessere Performance
|
||||
maxParallelForks = (Runtime.getRuntime().availableProcessors() / 2).coerceAtLeast(1)
|
||||
}
|
||||
|
||||
@@ -31,7 +31,6 @@ dependencies {
|
||||
implementation(projects.core.coreUtils)
|
||||
// Stellt gemeinsame Abhängigkeiten bereit.
|
||||
implementation(projects.platform.platformDependencies)
|
||||
|
||||
// Stellt die Spring Cloud Gateway und Consul Discovery Abhängigkeiten bereit
|
||||
implementation(libs.bundles.spring.cloud.gateway)
|
||||
// Circuit Breaker (Resilience4j) für Gateway Filter - optimiert mit libs reference
|
||||
@@ -44,21 +43,17 @@ dependencies {
|
||||
implementation(libs.spring.boot.starter.webflux)
|
||||
// Spring Security (WebFlux) – benötigt für SecurityWebFilterChain-Konfiguration
|
||||
implementation(libs.spring.boot.starter.security)
|
||||
|
||||
// Bindet die wiederverwendbare Logik zur JWT-Validierung ein.
|
||||
implementation(projects.infrastructure.auth.authClient)
|
||||
|
||||
// Bindet die wiederverwendbare Logik für Metriken und Tracing ein.
|
||||
implementation(projects.infrastructure.monitoring.monitoringClient)
|
||||
// Explizite Actuator-Abhängigkeit für Health Indicators (benötigt für GatewayHealthIndicator)
|
||||
// Obwohl bereits im monitoring-client Bundle, wird durch 'implementation' nicht transitiv verfügbar
|
||||
implementation(libs.spring.boot.starter.actuator)
|
||||
|
||||
// Logback-Abhängigkeiten - Versionen werden von Spring Boot BOM verwaltet
|
||||
implementation("ch.qos.logback:logback-classic")
|
||||
implementation("ch.qos.logback:logback-core")
|
||||
implementation("org.slf4j:slf4j-api")
|
||||
|
||||
// Stellt alle Test-Abhängigkeiten gebündelt bereit.
|
||||
testImplementation(projects.platform.platformTesting)
|
||||
testImplementation(libs.bundles.testing.jvm)
|
||||
@@ -67,7 +62,6 @@ dependencies {
|
||||
testImplementation("ch.qos.logback:logback-core")
|
||||
testImplementation("org.slf4j:slf4j-api")
|
||||
// Redundante Security-Abhängigkeit im Testkontext entfernt (bereits durch platform-testing abgedeckt)
|
||||
|
||||
}
|
||||
|
||||
tasks.test {
|
||||
|
||||
@@ -28,10 +28,8 @@ dependencies {
|
||||
implementation(projects.platform.platformDependencies)
|
||||
// Baut auf der zentralen Kafka-Konfiguration auf und erbt deren Abhängigkeiten.
|
||||
implementation(projects.infrastructure.messaging.messagingConfig)
|
||||
|
||||
// Fügt die reaktive Kafka-Implementierung hinzu (Project Reactor).
|
||||
implementation(libs.reactor.kafka)
|
||||
|
||||
// Stellt alle Test-Abhängigkeiten gebündelt bereit.
|
||||
testImplementation(projects.platform.platformTesting)
|
||||
}
|
||||
|
||||
@@ -26,12 +26,10 @@ dependencies {
|
||||
api(platform(projects.platform.platformBom))
|
||||
// Stellt gemeinsame Abhängigkeiten bereit.
|
||||
api(projects.platform.platformDependencies)
|
||||
|
||||
// OPTIMIERUNG: Verwendung des `kafka-config`-Bundles.
|
||||
// `api` wird verwendet, damit der `messaging-client` diese Konfigurationen
|
||||
// und Abhängigkeiten (wie Jackson) direkt nutzen kann.
|
||||
api(libs.bundles.kafka.config)
|
||||
|
||||
// Stellt alle Test-Abhängigkeiten gebündelt bereit.
|
||||
testImplementation(projects.platform.platformTesting)
|
||||
}
|
||||
|
||||
@@ -7,16 +7,12 @@ plugins {
|
||||
alias(libs.plugins.spring.dependencyManagement)
|
||||
}
|
||||
|
||||
|
||||
|
||||
dependencies {
|
||||
// Stellt sicher, dass alle Versionen aus der zentralen BOM kommen.
|
||||
implementation(platform(projects.platform.platformBom))
|
||||
// Stellt gemeinsame Abhängigkeiten bereit.
|
||||
implementation(projects.platform.platformDependencies)
|
||||
|
||||
// OPTIMIERUNG: Verwendung des `monitoring-client`-Bundles.
|
||||
// Es enthält Spring Boot Actuator, Micrometer Prometheus und Zipkin Tracing.
|
||||
implementation(libs.bundles.monitoring.client)
|
||||
|
||||
}
|
||||
|
||||
@@ -17,16 +17,13 @@ dependencies {
|
||||
implementation(platform(projects.platform.platformBom))
|
||||
// Stellt gemeinsame Abhängigkeiten bereit.
|
||||
implementation(projects.platform.platformDependencies)
|
||||
|
||||
// Spring Boot Starter für einen einfachen Web-Service.
|
||||
implementation(libs.spring.boot.starter.web)
|
||||
implementation(libs.spring.boot.starter.actuator)
|
||||
|
||||
// Abhängigkeiten für den Zipkin-Server (UI ist via zipkin-lens bereits enthalten).
|
||||
implementation(libs.zipkin.server)
|
||||
// Prometheus client für Zipkin Metriken
|
||||
implementation(libs.micrometer.prometheus)
|
||||
|
||||
// Stellt alle Test-Abhängigkeiten gebündelt bereit.
|
||||
testImplementation(projects.platform.platformTesting)
|
||||
testImplementation(libs.logback.classic) // SLF4J provider for tests
|
||||
|
||||
Reference in New Issue
Block a user