Springboot - Maven vs Gradle

민태영·2024년 5월 14일
0

1. 빌드관리도구

프로젝트에서 필요한 xml, properties, jar파일들을 자동을 인식하여 빌드해주는 도구이다. 예전에는 개발자들이 수동으로 필요한 라이브러리가 있을시 직접 다운받거나 버전업의 확인을 하는 등 여러 수고를 덜어주는 도구이다.

1-1) 주 작업

  • 소드코드를 정보관리, 테스트 빌드, 배포 등의 작업을 진행
  • 프로젝트 정보 관리, 테스트빌드, 배포 등의 작업을 진행
  • 외부 라이브러리를 참조하여 자동으로 다운로드 및 업데이트의 관리를 진행

1-2) 대표적인 빌드관리 도구

Ant, Maven, Gradle


2. 메이븐(Maven)이란?

Maven Repository : https://mvnrepository.com/

자바의 대표적인 관리도구였던 Ant를 대체

  • 프로젝트의 외부 라이브러리를 쉽게 참조할 수 있게 pom.xml파일로 명시하여 관리
  • 참조한 외부 라이브러리에 연관된 다른 라이브러리도 자동으로 관리

2-1) 메이븐을 사용하는 이유

  • 기존에 사용되던 Ant는 빌드의 기능만을 가지고 있음
  • Maven은 라이브러리를 자동으로 관리해주는 기능이 추가
  • 사용중인 라이브러리가 업데이트내용이 있을 시 자동으로 업데이트하여 적용

2-2) 메이븐 간단사용법

pom.xml파일을 활용하여 빌드 및 관리

pom.xml의 역할

  • 프로젝트 정보관리
  • 해당 프로젝트에서 사용하는 외부 라이브러리 관리
  • 해당 프로젝트의 빌드 관련 설정

2-3) 메이븐 대표태그


3. 그래들(Gradle)이란?

Groovy스크립트를 활용한 빌드관리 도구

  • 안드로이드 프로젝트의 표준 빌드 시스템으로 채택
  • 멀티프로젝트의 빌드에 최적화하여 설계됨
  • Maven에 비해 더 빠른 처리속도를 가짐
  • Maven에 비해 더 간결한 구성이 가능

3-1) Maven과의 차이

  • Maven : pom.xml, Gradle : build.gradle

  • Gradle은 설치없이 사용할 수 있다.

  • Maven에 비해 대규모프로젝트에서의 성능이 좋다.

3-2) 그래들 대표용어

  • repositories : 라이브러리가 저장된 위치 등 설정

  • mavenCentral : 기본 Maven Repository

  • dependencies : 라이브러리 사용을 위한 의존성 설정

profile
꿈을 꾸는 개발자

0개의 댓글