Backend
Gralde이란?
Llimy1
2023. 9. 12. 23:36
반응형
SMALL
Groovy를 기반으로 한 빌드 자동화, 개발 지원에 중점을 둔 빌드 도구인 Gradle
Ant와 Maven과 같은 이전 세대 빌드 도구의 단점을 보완하고 장점을 취합하여 만든 오픈소스로 공개된 빌드 도구이다.
Ant
- XML 기반으로 빌드 스크립트 작성
- 자유롭게 빌드 단위를 지정
- 간단하고 사용하기 쉽다
- 유연하지만 프로젝트가 방대해지면 스트립트 관리와 빌드 과정이 복잡
- 생명주기(LifeCycle)을 갖지 않아 각각의 결과물에 대한 의존 관계를 정의 해야함
Maven
- XML 기반으로 작성
- 생명주기(LifeCycle)와 프로젝트 객체 모델(POM, Project Object Model)이란 개념이 도입
- Ant의 장황한 빌드 스크립트 개선
- pom.xml에 필요한 라이브러리를 선언하면 자동으로 해당 프로젝트를 불러옴
- 상대적으로 학습 장벽이 높음
- 라이브러리가 서로 의존하는 경우 복잡해 질 수 있음
Gradle
- Gradle은 Ant와 Maven이 가진 장점을 모아 만들었다
- 의존성 관리를 위한 다양한 방법을 제공 빌드 스크립트를 XML 언어가 아닌 JVM에서 동작하는 스크립터 언어 Groovy 기반의 DSL(Domain Specific Language)를 사용
- Groovy는 자바 문법과 유사하여 자바 개발자가 쉽게 익힐 수 있으며, Gradle Wrapper를 이용하면 Gradle이 설치되지 않아도 프로젝트 빌드 가능
- Maven의 pom.xml을 Gradle용으로 변환 가능 Maven의 중앙 저장소도 지원하여 라이브러리를 모두 그대로 가져다 사용 가능
반응형
LIST