그레이들(Gradle) 소개
그레이들은 프로젝트를 빌드할 때 사용되는 툴이지만 빌드, 테스트, 배포 등 개발 과정 전반에 필요한 거의 모든 과정을 자동화하는 아주 강력한 툴이다.
특징으로는 이전에 사용되었던 툴인 Maven에 비해 처리 속도가 빠르고, Groovy 언어 기반의 스크립트를 통해 빌드 설정을 편하게 관리할 수 있다는 점이 있다.
그레이들 버전 5.0 이상부터는 스크립트 언어로 Kotlin을 지원하여 IDE에서 스크립트의 문법까지 체크 가능하다.
일반적으로 그레이들은 자바나 안드로이드 프로젝트를 빌드할 때 많이 사용되며, 그레이들을 통해 프로젝트에 필요한 라이브러리를 쉽게 다운받을 수 있고 각 라이브러리가 의존하는 라이브러리 또한 자동적으로 설치된다.
그레이들 프로젝트 구성
그레이들 8.6 버전 기준, 그레이들 프로젝트의 구조는 위의 사진과 같다.
그레이들 관련 디렉토리, 그레이들 래퍼(gradlew), 각종 스크립트 파일 등이 프로젝트 빌드를 돕는 역할을 한다.
프로젝트의 루트 디렉토리 위치의 터미널 내에서 gradle init 명령어(리눅스 기준)를 수행하면 해당 프로젝트는 그레이들 프로젝트가 된다.
다음은 그레이들 4.4 버전을 설치한 상태에서 zzzz라는 디렉토리에 gradle init을 수행한 결과이다.
그레이들 공식 문서와는 다르게 여러 서브 프로젝트가 아닌 싱글 프로젝트로 생성된 모습이다.
현재 상태에서 src 디렉토리를 만들어 소스 코드를 작성하면 그레이들을 통해 빌드 및 실행할 수 있는 상태가 된다.
그레이들 래퍼
gradle wrapper 명령어를 실행하면 gradlew, gradlew.bat 파일이 생성되는데, 이를 그레이들 래퍼 파일이라고 한다.
gradlew는 리눅스에서 실행할 수 있는 파일, gradlew.bat은 윈도우에서 실행할 수 있는 배치 파일이다.
그레이들 공식 문서에 따르면, 래퍼를 사용했을 때의 장점은 다음과 같다.
- 프로젝트 제작자가 정해둔 그레이들 버전으로 프로젝트를 표준화
- 프로젝트에 접근하는 모든 사용자, 모든 개발 환경에게 동일한 버전의 그레이들 제공
- 접근자의 컴퓨터에 그레이들이 설치되지 않아도, 래퍼를 통해 빌드 가능
프로젝트의 그레이들 래퍼를 설정할 때, 개발자의 컴퓨터에 설치된 그레이들의 버전과 다른 래퍼로도 설정 가능하다.
gradle wrapper --gradle-version 4.8
→4.8 버전의 그레이들 래퍼 생성
그레이들 작업이 필요할 때 래퍼를 사용하려면 ./gradlew 태스크명(태스크: 그레이들의 최소 작업 단위)의 형태로 사용하면 된다.
'백엔드 공부 메모 > Gradle' 카테고리의 다른 글
[참고] 왜 build.gradle의 dependencies 블록에서 Configuration을 메소드처럼 사용할 수 있을까? (0) | 2024.03.18 |
---|---|
build.gradle 스크립트 (2) | 2024.03.18 |
그레이들 프로젝트 빌드 과정 (3) | 2024.03.17 |