Legday
[JAVA]메이븐(maven)과 그래들(gradle)이란? 본문
1) 메이븐(maven)과 그래들(gradle)
- Spring에서 프로젝트를 만들때 maven project를 쓸지 gradle프로젝트를 쓸지 나온다.
- 이때 maven은 의존성주입이란것만 듣고 항상 gradle project로 선택해서 만들어서 공부를 해보았습니다
- maven과 gradle 둘다 빌드관리 도구입니다
2) 메이븐(maven)
- 기존에는 Ant를 이용했는데 Ant상위호환이 바로 maven이다.
- maven은 Apache 라이센스로 배포되는 오픈소스 소프트웨어 입니다.
- maven은 수많은 라이브러리들을 관리해주는 도구입니다.
- maven은 라이브러리들을 많이 관리해주기 때문에 필요한 라이브러리를 추가하기 위해 의존성을 많이 사용하기 때문에 라이브러리 의조성 관리 툴이라고 할 수 있다.
- pom.xml을 통해 개발에 필요한 라이브러리를 네트워크를 통해 다운받아 자동으로 연결시켜줍니다.
- pom이란 Project Object Model 의 약자로 프로그램의 정보를 담고있는 xml파일입니다(프로젝트 정보, 빌드 설정, 빌드 환경, pom 연관 정보 등을 가지고있다.)
3) 그래들(gradle)
- gradle은 ant와 maven의 장점들만 모아서 나왔습니다.
- 안드로이드앱의 공식 빌드 시스템이며 빌드 속도가 maven과 ant보다 더 빠르다
- 기존 maven은 xml파일로 라이브러리를 정의 했지만 gradle은 groovy 라는 스크립트 언어를 이용한 빌드 자동화 시스템이다.
- groovy는 java 가상머신(JVM)에서 동작하는 스크립트 언어이다. 컴파일 하지 않고 소스코드를 그대로 실행한다.
4) 메이블(maven) vs 그래들(gradle)
- maven은 ant보다 좋고 gradle은 maven,ant의 장점들만 모아놨기 때문에 당연히 gradle이다
'Spring&Springboot > Spring(개인공부용)' 카테고리의 다른 글
| [Spring]IoC 컨테이너란? (0) | 2022.08.25 |
|---|---|
| [Spring] Controller로 데이터받는방법 (0) | 2022.08.25 |
| [STS] View Resolver 사용하기 (0) | 2022.08.24 |
| [Spring] 로컬호스트로 서버연결해 텍스트 출력하기 (0) | 2022.08.24 |
| 아파치 톰캣(Apache Tomcat) 이란? (0) | 2022.08.24 |