일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Route53
- 스프링
- RequestBody로깅
- ReactAdmin
- afterCompletion
- Duration-Based Cookie
- ContentCachingRequestWrapper
- 슬로우 쿼리
- SSR #CSR
- Cross-Zone Load Balancing
- jpa
- UNION 열
- 람다 캡쳐링
- queryDsl #JPA #hibernate
- oracle
- querydsl-sql
- ChatGPT
- Routing Policies
- 자바로그
- 네트워크 io
- superset-oracle
- CannotGetJdbcConnectionException
- 자연변수
- 아파치 드루이드
- Application-Based Cookie
- hikari cp
- reflection API
- Connection Draining
- aws
- 코딩삽질일기
- Today
- Total
Forest Gump?
GRADLE과 MAVEN 알아보기 본문
스프링 프로젝트 구조를 쓰면서 가장 많이 쓰이는 빌드 관리 툴은 GRADLE과 MAVEN입니다.
두개의 툴을 간단히 설명을 해보자면,
MAVEN
MAVEN 은 POM.XML을 통해 라이브러리들을 관리할수 있게해주는 자바용 프로젝트 관리 툴입니다.
우리가 프로젝트를 진행하면서 사용하는 라이브러리들을 자동 관리해 줄뿐만 아니라, 자동 업데이트까지 해주는
JAVA 빌드 도구의 표본이라 볼 수 있는 전통적인 툴이라고 할 수 있습니다.
GRADLE
반면에 GRADLE은 비교적 최근에 나온 툴로, GROOVY 언어 즉 JVM에서 실행되는 자바를 이용한 스크립트 언어로
이루어져 있어, POM.XML과 달리 여러가지 자바 용법 EX)IF/ELSE 등으로 더 편리하게 구성 가능한 특징이 있습니다.
BUILD는 동적인 요소이기때문에,MAVEN의 XML 로 작성되는건 복잡하고 어려운 부분이 많지만 ,
GRADLE은 동적인 요소들을 플러그인이나 자체 스크립트 언어로 표현을 하면 되기때문에 빠르고 짧게 작성할 수 있습니다.
(GRADLE 은 공식 비교문서를 통해서 MAVEN과의 퍼포먼스를 여러 부분으로 비교했는데, 속도에 있어서도 특정상황에
최대 100배가 빠르다고 GRADLE은 자신합니다!)
진행하는 프로젝트가 크지 않다면 상관이 없겠지만, 규모가 커질수록 XML을 사용하는 MAVEN은 양이 많아지고 , 복잡한 빌드 프로젝트를 짜기에 어려운 반면, GRADLE은 자바를 기초로 사용하는 GROOVY로 인해 코드를 간결하고 짧게
짤 수 있어서 선호되고 있는 추세입니다.
결론
GRADLE은 최신 기술이라 여러 면에서 MAVEN보다 효율이 좋은 상위 툴이라고 볼 수 있습니다.
하지만 GROOVY언어로 되어있기 때문에, 배우고 적응하는데 시간이 걸려 아직까진 친숙한 MAVEN을 더 많이 사용합니다.
'SPRING' 카테고리의 다른 글
cannot find symbol 오류로 알아보는 gradle 의존성 옵션 정리 (0) | 2023.02.28 |
---|