시작하기
요구 사항
섹션 제목: “요구 사항”- Kotlin 2.3+
- 대상 repository에 따라 Java 21 또는 Java 25
- Gradle Kotlin DSL
- Framework integration을 쓴다면 Spring Boot 3/4 또는 Ktor 3
현재 BOM 추가
섹션 제목: “현재 BOM 추가”Gradle Kotlin DSL에서는 bluetape4k-dependencies version만 version catalog에
두고, bluetape4k module alias에는 version을 쓰지 않습니다.
[versions]bluetape4k-dependencies = "1.3.1"
[libraries]bluetape4k-dependencies = { module = "io.github.bluetape4k:bluetape4k-dependencies", version.ref = "bluetape4k-dependencies" }bluetape4k-core = { module = "io.github.bluetape4k:bluetape4k-core" }bluetape4k-coroutines = { module = "io.github.bluetape4k:bluetape4k-coroutines" }중앙 BOM은 공유 third-party version과 bluetape4k module version을 관리합니다. 애플리케이션의 module dependency에는 version을 쓰지 않습니다.
dependencies { implementation(platform(libs.bluetape4k.dependencies)) implementation(libs.bluetape4k.core) implementation(libs.bluetape4k.coroutines)}Repository-specific module을 쓸 때도 규칙은 같습니다. 중앙 BOM은 그대로 두고, 서비스에 필요한 module만 추가합니다.
[libraries]exposed-jdbc = { module = "io.github.bluetape4k.exposed:bluetape4k-exposed-jdbc" }bluetape4k-aws = { module = "io.github.bluetape4k.aws:bluetape4k-aws-spring-boot" }dependencies { implementation(platform(libs.bluetape4k.dependencies)) implementation(libs.exposed.jdbc) implementation(libs.bluetape4k.aws)}현재 dependency governance 기준은 버전 거버넌스에서 확인합니다.
시작 지점 선택
섹션 제목: “시작 지점 선택”| 목표 | 시작할 곳 |
|---|---|
| 공유 버전 거버넌스 | bluetape4k-dependencies |
| Core Kotlin과 Spring Boot backend utility | bluetape4k-projects |
| Exposed JDBC/R2DBC repository | bluetape4k-exposed |
| AWS SDK v2와 AWS Kotlin SDK wrapper | bluetape4k-aws |
| Graph database integration | bluetape4k-graph |
| Distributed leader election과 runtime coordination | bluetape4k-leader |
| 한국어/일본어 tokenizer와 text processing | bluetape4k-text |
| Backend image processing | bluetape4k-image |
| Audit history와 entity diff workflow | bluetape4k-javers |
| Platform migration과 incubation work | bluetape4k-experimental |
| 일반 end-to-end 예제 | bluetape4k-workshop |
| Exposed JDBC 예제 | exposed-workshop |
| Exposed R2DBC 예제 | exposed-r2dbc-workshop |
| Optimization 예제 | timefold-workshop |
| Reference application | clinic-appointment |
프로젝트 검증
섹션 제목: “프로젝트 검증”./gradlew compileTestKotlin --no-daemonDependency surface를 넓히기 전에 compile check를 먼저 실행합니다. Container 기반 module은 compile이 성공한 뒤 focused integration test를 실행합니다.