본문 바로가기
나만의 정리

Maven VS Gradle

by 코리늬 2020. 6. 2.

메이븐(Maven)과 그래들(Gradle)

흔히 스프링에서 빌드 도구메이븐 또는 그래들을 사용한다.

그런데 요즘 트렌드를 보면 대부분 Spring Boot + Gradle을 사용한다.

 

왜 Maven말고 Gradle을 더 많이 사용할까?

궁금해졌다.

 

간단히 각각의 특징을 알아보자.

메이븐(Maven)

  • apache의 ant build의 대안으로 만들어졌으며, apache 라이센스로 배포되는 오픈 소스 소프트웨어이다.
  • pom.xml을 사용한 정형화된 빌드 시스템

그래들(Gradle)

  • Ant와 Maven의 장점을 합쳐서 출시

  • 빌드 스크립트가 자바와 같이 JVM 위에서 동작하는 groovy라는 언어로 작성하게 된다.

    스크립트 언어이므로 컴파일을 할 필요는 없다.

Maven VS Gradle

  • Maven은 XML 기반의 빌드 처리를 작성한다.

    내용이 복잡해지면, 작성이 까다로워진다.

    반면에 Gradle은 Java와 비슷한 코드를 사용하기 때문에 받아들이기 쉬운편이다.

  • Maven의 경우 멀티 프로젝트에서 특정 설정을 다룬 모듈에서 상속을 받아야 하지만, gradle은 설정 주입 방식으로 이를 해결한다.

    그래서 gradle은 멀티 프로젝트에 매우 적합하며, 빌드 속도는 10 ~ 100배 가량 빠르다.

 

단순히 작성하기 간편하며, 빠르기 때문에 사용한다고 생각하면 되겠다.

댓글