65 lines
2.4 KiB
Markdown
65 lines
2.4 KiB
Markdown
# **Gradle 실전 가이드 (Kotlin DSL 기반)**
|
|
|
|
## **1. Gradle 소개**
|
|
1.1 빌드 도구란?
|
|
1.2 Gradle의 역사와 특징
|
|
1.3 Gradle과 다른 빌드 도구 비교 (Maven, Ant)
|
|
1.4 Gradle 설치 및 환경 설정
|
|
|
|
## **2. Gradle 프로젝트 시작하기**
|
|
2.1 Gradle 프로젝트 구조 이해
|
|
2.2 `settings.gradle.kts`와 `build.gradle.kts` 파일 개요
|
|
2.3 Gradle Wrapper 사용법
|
|
2.4 첫 번째 Gradle 빌드 실행
|
|
|
|
## **3. Gradle의 기본 개념**
|
|
3.1 프로젝트와 태스크(Task) 개념
|
|
3.2 Gradle 라이프사이클 및 실행 과정
|
|
3.3 기본 태스크 정의 및 실행
|
|
3.4 Gradle의 주요 API와 Kotlin DSL
|
|
|
|
## **4. 의존성 관리**
|
|
4.1 Gradle의 의존성 관리 개요
|
|
4.2 `dependencies` 블록과 의존성 선언
|
|
4.3 라이브러리 버전 관리 (`version catalog`, `buildSrc`)
|
|
4.4 로컬/원격 저장소 사용 (Maven Central, JitPack, 내부 Nexus)
|
|
4.5 의존성 분류 (implementation, api, compileOnly, runtimeOnly)
|
|
|
|
## **5. Gradle 플러그인과 확장**
|
|
5.1 플러그인의 개념과 역할
|
|
5.2 공식 Gradle 플러그인 사용하기 (Java, Kotlin, Application 등)
|
|
5.3 커스텀 Gradle 플러그인 만들기
|
|
5.4 플러그인과 태스크의 연계
|
|
|
|
## **6. Gradle과 테스트 자동화**
|
|
6.1 Gradle에서 JUnit 및 Kotest 설정
|
|
6.2 테스트 태스크 실행 및 결과 분석
|
|
6.3 Jacoco를 활용한 코드 커버리지 측정
|
|
6.4 CI/CD 환경에서의 Gradle 테스트 자동화
|
|
|
|
## **7. 멀티 모듈 프로젝트**
|
|
7.1 멀티 모듈 프로젝트 구조
|
|
7.2 `settings.gradle.kts`에서 하위 프로젝트 구성
|
|
7.3 모듈 간 의존성 관리
|
|
7.4 공통 설정 및 코드 공유 방법
|
|
|
|
## **8. Gradle 빌드 성능 최적화**
|
|
8.1 Gradle 캐싱과 병렬 빌드
|
|
8.2 `buildSrc`와 `version catalog` 활용
|
|
8.3 속도 개선을 위한 설정 (`configuration cache`, `incremental build`)
|
|
8.4 Gradle Enterprise를 활용한 빌드 분석
|
|
|
|
## **9. Gradle과 CI/CD**
|
|
9.1 GitHub Actions에서 Gradle 빌드 자동화
|
|
9.2 Jenkins, GitLab CI/CD와 Gradle 연동
|
|
9.3 Docker 및 Kubernetes 배포 자동화
|
|
9.4 빌드 결과물 배포 (JitPack, Maven Central)
|
|
|
|
## **10. 실전 프로젝트 적용 사례**
|
|
10.1 Spring Boot 프로젝트에서 Gradle 사용하기
|
|
10.2 Android 프로젝트에서 Gradle 최적화
|
|
10.3 Kotlin Multiplatform 프로젝트 빌드
|
|
10.4 Gradle을 활용한 서버/프론트엔드 통합 빌드
|
|
|
|
---
|