Spring

[Spring] Maven VS Gradle

이레의 개발노트 2022. 5. 2. 09:53
728x90
반응형

스프링 프로젝트에는 Maven 기반과 Gradle 기반 이렇게 두 가지로 구성할 수 있습니다.

 

1, Maven

Maven이란 자바용 프로젝트 관리 도구로 아파지 Ant의 대안으로 만들어졌습니다.

프로젝트를 진행하며 사용하는 많은 라이브러리를 관리해주는 도구입니다.

메이븐의 기능을 사용하기 위해서는 POM이 사용되는데, POM은 Project Object Model의 약자입니다.

pom.xml에서 다루는 기능들은

- 프로젝트 정보 : 프로젝트 이름, 라이센스 등

- 빌드설정 : 소스, 리소스 등 빌드와 관련된 설정

- 빌드 환경 : 사용자 환경별로 달라질 수 있는 프로파일 정보

- pom 연관정보 : 모듈, 상위 프로젝트 등등

 

2, Gradle

Gradle 이란 안드로이드 앱의 공식 빌드 시스템으로 빌드 속도가 메이븐에 비해 10~100배가량 빠릅니다.

JAVA, C/C++, Phython 언어를 지원하고 Groovy를 이요한 빌드 자동화 시스템입니다.

build.gradle 파일로 빌드 스크립트를 작성합니다.

build.gradle 에는 dependencies 가 있는데

- implementation : 내부적으로만 사용되고 사용자에게는 의존성을 노출시키지 않게 합니다. 대부분의 라이브러리에 사용됩니다.

- compileOnly : 컴파일 타임에 필요한 라이브러리 입니다. 컴파일시에만 빌드하고 결과물에는 포함하지 않습니다.

예) Lombok

- runtimeOnly : 런타임시에만 필요한 라이브러리 입니다.

예) Logging, DB관련 라이브러리

- annotationProcessor : annotationProcessor를 명시하기 위해 사용합니다.

 

 

728x90
반응형

'Spring' 카테고리의 다른 글

[Spring] @RunWith  (0) 2022.05.04
[Spring] @Controller 란  (0) 2022.05.02