Gradle
Groovy기반의 스크립트 언어 사용
다양한 소프트웨어를 빌드(Build)할 수 있는 유연한 빌드 자동화 도구이다.
Gradle의 특징
1. 유연성
- 복잡한 빌드 시나리오를 처리할 수 있는 유연한 시스템을 제공한다.
- 빌드 스크립트를 통해 다양한 빌드 작업을 정의하고, 필요한 경우 커스터마이징할 수 있다.
2. 성능
- Build Cache
- 빌드 결과물을 캐싱하여 재사용한다.
- 라이브러리 의존성을 캐싱하여 재사용한다.
- 점진적 빌드
- 마지막 빌드 호출 이후 변경된 부분만 빌드한다.
- 변경되지 않은 부분은 캐시 결과를 검색해 재사용한다.
- 데몬 프로세스
- 다음 빌드 작업을 위해 백그라운드에서 대기하는 프로세스
- 초기 빌드 이후부터는 빌드 실행 시 초기화 작업을 거치지 않는다.
3. 멀티 프로젝트 빌드 지원
- 공통으로 사용하는 클래스를 모듈로 만들어 독립적인 각 프로젝트에서 사용할 수 있도록 한다.

4. 설정 주입 방식
- 필요한 설정을 직접 프로젝트에 주입하는 방식이다.
- 공통되는 정보는 묶어서 한번에 주입이 가능하다.
- 프로젝트별로 설정을 다르게 주입할 수 있다.
build.gradle
Groovy 기반 언어의 빌드 스크립트
스크립트를 작성하면 소스 코드를 빌드하고, 라이브러리들의 의존성을 관리할 수 있다.
build.gradle의 전체 구조

1. 플러그인
- 특정 작업을 위해 모아놓은 task들의 모음집
plugins {
id 'java'
id 'org.springframework.boot' version '3.1.5'
id 'io.spring.dependency-management' version '1.1.3'
}
- java plugin
- 아래 task들이 추가되어 실행할 수 있게 된다.

2. 의존성 관리
3. repositoryies
- 라이브러리가 저장된 위치를 정의하고, 저장소에서 라이브러리를 가져옴
repositories {
mavenCentral()
}
참고자료
Spring 입문 - 2주차