본문 바로가기
Dev/Java

『Java』 Gradle은 무엇인가? 의존성 관리는 왜 필요한가?

by 세대교체 2024. 10. 25.

Gradle

 

Gradle은 강력한 빌드 도구다.

Apache Ant와 Maven의 장점을 결합하면서 성능을 향상한 빌드 자동화 시스템이다. 대표적으로 변경된 부분만 빌드할 수 있고, 병렬 처리를 통해 빌드 시간을 단축시킨다는 이점이 있다.

 

빌드 도구는 Ant -> Maven -> Gradle 순으로 발전되어 왔다.

 

 

의존성 관리는 왜 필요한가?

의존성은 프로젝트가 필요로 하는 외부 라이브러리를 의미한다.

예를 들어, Java 기반 웹 애플리케이션을 개발할 때는 Spring, Hibernate 등의 라이브러리가 필요하다.

 

이때 Gradle은 프로젝트의 라이브러리 의존성을 선언적으로 관리하고 필요한 라이브러리를 자동으로 다운로드한다.

 

 

Gradle에서 의존성 관리하기

Gradle에서 의존성을 관리하면 외부 라이브러리를 쉽게 사용할 수 있다.

Gradle의 build.gradle 파일에서 의존성을 선언하면 필요한 라이브러리를 자동으로 다운로드한다.

 

 

implementation 키워드

해당 라이브러리를 컴파일하고 실행할 때 사용되도록 선언한다.

위 예제에서는 Spring Boot 웹 라이브러리를 추가했다.

 

testImplementation 키워드

테스트 코드에서만 사용하는 라이브러리를 추가할 때 사용합니다.

위 예제에서는 JUnit 라이브러리를 추가했다.

 

버전 관리

의존성의 버전을 관리하기 위해 ext 키워드를 사용하여 공통 버전을 설정할 수 있다.

 

여러 라이브러리에서 동일한 버전을 사용할 때 편리하며, 버전을 변경할 때도 한 곳에서 수정하면 되어 관리가 쉽다.

 

저장소 설정하기

의존성을 다운로드할 저장소(repository)를 설정해야 한다.

Gradle에서는 Maven Central, JCenter와 같은 공개 저장소를 사용할 수 있다.

 

repositories 블록에서 mavenCentral()을 사용하여 Maven Central 저장소에서 라이브러리를 다운로드하도록 설정했다. 필요에 따라 추가적인 저장소를 정의할 수도 있다.