plugins { id 'java' id 'org.springframework.boot' version '3.3.6' id 'io.spring.dependency-management' version '1.1.7' } group = 'kr.go.kcg' version = '0.1.0' java { toolchain { languageVersion = JavaLanguageVersion.of(21) } } configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() maven { url 'https://repo.osgeo.org/repository/release/' } } dependencies { // Spring Boot implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-validation' implementation 'org.springframework.boot:spring-boot-starter-websocket' implementation 'org.springframework.boot:spring-boot-starter-data-redis' implementation 'org.springframework.boot:spring-boot-starter-security' implementation 'org.springframework.boot:spring-boot-starter-actuator' // Database runtimeOnly 'org.postgresql:postgresql' runtimeOnly 'com.h2database:h2' implementation 'org.hibernate.orm:hibernate-spatial:6.6.4.Final' // API Documentation (INR-05) implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.3.0' // Jackson GeoJSON implementation 'org.n52.jackson:jackson-datatype-jts:1.2.10' // Kafka (물표 스트리밍) implementation 'org.springframework.kafka:spring-kafka' // Lombok compileOnly 'org.projectlombok:lombok' annotationProcessor 'org.projectlombok:lombok' // MapStruct (DTO 매핑) implementation 'org.mapstruct:mapstruct:1.6.3' annotationProcessor 'org.mapstruct:mapstruct-processor:1.6.3' // Test testImplementation 'org.springframework.boot:spring-boot-starter-test' testImplementation 'org.testcontainers:postgresql:1.20.4' testImplementation 'org.testcontainers:junit-jupiter:1.20.4' } tasks.named('test') { useJUnitPlatform() }