빌드 관리 도구
Maven
- Maven은 Java용 프로젝트 관리도구로 Apache의 Ant 대안으로 만들어졌다.
- 빌드 중인 프로젝트, 빌드 순서, 다양한 외부 라이브러리 종속성 관계를 pom.xml파일에 명시한다.
- Maven은 외부저장소에서 필요한 라이브러리와 플러그인들을 다운로드 한다음, 로컬시스템의 캐시에 모두 저장한다.
Gradle
그루비(Groovy)기반의 빌드 자동화 도구
- 자바 진영에서는 Maven과 더불어 많이 쓰이는 빌드 툴이다.
- XML 기반의 Maven보다 동적인 빌드를 유연하게 표현할 수 있다.
- XML 기반의 Maven보다 가독성이 좋다.
- Maven보다 성능이 좋다.
- build.gradle을 작성해서, 본인이 원하는 환경의 어플리케이션 환경을 구축할 수 있다.
- Apacahe Maven과 Apache Ant에서 볼수 있는 개념들을 사용하는 대안으로써 나온 프로젝트 빌드 관리 툴이다. (완전한 오픈소스)
- Groovy 언어를 사용한 Domain-specific-language를 사용한다. (설정파일을 xml파일을 사용하는 Maven보다 코드가 훨씬 간결하다.)
- 2007년에 처음 개발되었고, 2013년에 구글에 의해 안드로이드 프로젝트의 빌드 시스템으로 채택되었다.
- 꽤 큰규모로 예상되는 multi-project 빌드를 도울 수 있도록 디자인되었다.
- Gradle은 프로젝트의 어느부분이 업데이트되었는지 알기 때문에, 빌드에 점진적으로 추가할 수 있다.
- 업데이트가 이미 반영된 빌드의 부분은 즉 더이상 재실행되지 않는다. (따라서 빌드 시간이 훨씬 단축될 수 있다!)
연관된 글 :
[Gradle] implementation compile 차이
참고 :
'개발 > 개발 환경' 카테고리의 다른 글
POSTMAN (0) | 2023.02.21 |
---|---|
Scouter (0) | 2023.02.15 |
쿠버네티스 와 도커 (0) | 2023.02.09 |
[Gradle] dependencies - implementation compile 차이 (0) | 2022.12.26 |
이클립스 사용팁 및 단축키 모음 (0) | 2018.12.27 |