plugins { id 'java-library' } dependencies { // Spring Boot Starters (api로 노출 — 소비 모듈이 사용) api 'org.springframework.boot:spring-boot-starter-web' api 'org.springframework.boot:spring-boot-starter-data-jpa' api 'org.springframework.boot:spring-boot-starter-security' api 'org.springframework.boot:spring-boot-starter-validation' api 'org.springframework.boot:spring-boot-starter-data-redis' api 'org.springframework.boot:spring-boot-starter-cache' api 'org.springframework.boot:spring-boot-starter-actuator' api 'org.springframework.boot:spring-boot-starter-oauth2-client' api 'org.springframework.boot:spring-boot-starter-oauth2-resource-server' // JWT api 'io.jsonwebtoken:jjwt-api:0.12.6' runtimeOnly 'io.jsonwebtoken:jjwt-impl:0.12.6' runtimeOnly 'io.jsonwebtoken:jjwt-jackson:0.12.6' // OpenAPI api 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.8.6' // Admin Console (조건부) implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' // Flyway (소비 모듈이 DBMS별 추가) api 'org.flywaydb:flyway-core' // DB 드라이버 — compileOnly (소비 모듈이 runtimeOnly로 선택) compileOnly 'com.mysql:mysql-connector-j' compileOnly 'org.postgresql:postgresql' compileOnly 'com.oracle.database.jdbc:ojdbc11:23.6.0.24.10' compileOnly 'com.microsoft.sqlserver:mssql-jdbc:12.8.1.jre11' // Embedded Redis (Docker 없이 Redis 자동 구동) api('it.ozimov:embedded-redis:0.7.3') { exclude group: 'org.slf4j' exclude group: 'ch.qos.logback' } // Micrometer runtimeOnly 'io.micrometer:micrometer-registry-prometheus' // Test testRuntimeOnly 'com.h2database:h2' }