투로드
Coder ToLoad
투로드
전체 방문자
오늘
어제

블로그 메뉴

  • 홈
  • 알고리즘
  • CS
  • GITHUB
  • 태그
  • 분류 전체보기 (69)
    • Toy Project (0)
      • EternalSNS (0)
    • Algorithm (46)
      • BaekJoon (38)
      • Programmers (7)
      • Code Tree (1)
    • Computer Science (13)
      • JAVA (7)
      • DataBase (4)
    • Backend (7)
      • Spring (2)
      • JPA (2)
      • Django (3)
    • Mobile (2)
      • Android (2)
    • Unity (1)

인기 글

최근 글

hELLO · Designed By 정상우.
투로드

Coder ToLoad

[Spring] Maven과 Gradle의 차이
Backend/Spring

[Spring] Maven과 Gradle의 차이

2021. 12. 27. 22:29

Spring Boot로 프로젝트를 진행하면서 Maven과 Gradle 중 하나의 빌드도구를 선택해서 진행을 하게 되는데 그러면서 둘의 차이가 무엇일까 궁금하게 되어서 찾아보고 간단하게 기록해두려 한다.


Maven의 정의

  • 자바용 프로젝트 관리도구, Apache Ant의 대안으로 등장
  • 필요한 라이브리러를 pom.xml 에 정의해두면 내가 사용할 라이브러리 뿐 아니라 해당 라이브러리에 필요한 다른 라이브러리들까지 자동으로 다운받아줌

 

 

Maven의 pom.xml

  • 메이븐을 이용하는 프로젝트 root에 존재하는 xml 파일
  • 프로젝트의 모든 설정, 의존성 등을 기록
  • 즉, pom.xml 에 사용하고자하는 라이브러리를 등록함
  • https://mvnrepository.com/ 사이트에서 메이븐 코드를 확인 할 수 있음

 


 

Gradle의 정의

  • Groovy를 기반으로한 빌드 도구. Ant와 Maven의 단점을 보완하고 장점을 취합하여 만든 오픈소스로 공개된 빌드 도구
  • xml의 구조적 틀에서 벗어나 DSL언어로 간결한 정의 가능
  • 프로젝트를 설정 주입 방식으로 정의 -> Maven의 상속 구조보다 재사용에 용이

 


 

Maven VS Gradle

  • Gradle은 Maven 보다 최대 100배 빠름
  • Gradle은 캐시를 사용하기 때문에 테스트 반복 시 차이가 더 커짐
  • Maven을 많은 사람들이 사용해왔기 때문에 아직도 많이 사용하지만 전체적인 측면에서 비교했을 때 Gradle이 앞선다.
  • 새로 시작하는 프로젝트라면 Gradle을 사용하는게 더 유리해보임.

 

 

참고한 블로그

https://bkim.tistory.com/13

https://yeonyeon.tistory.com/89

https://goddaehee.tistory.com/199

 

저작자표시 (새창열림)

'Backend > Spring' 카테고리의 다른 글

[ERD] ERD Cloud 사용법  (0) 2022.10.31
    'Backend/Spring' 카테고리의 다른 글
    • [ERD] ERD Cloud 사용법
    투로드
    투로드
    훌륭한 프로그래머가 되어가는 과정을 담아보는 중입니다.

    티스토리툴바