본문 바로가기
IT관련/정리

[자바 의존성 관련] 메이븐과 의존성 관리도구

by XoX 2020. 5. 13.
728x90
개인적인 메모를 위해 작성된 글이므로 가벼운 참고용으로 봐주세요.

 

 메이븐(Maven)이란?

 

- Maven은 자바용 프로젝트 관리도구로 Apache Ant의 대안으로 만들어졌다.


- Maven은 Ant와 마찬가지로 프로젝트의 전체적인 라이프 사이클을 관리하는 도구 이며, 많은 편리함과 이점이 있어 널리 사용되고 있다.

 

- 프로젝트의 작성부터 컴파일, *FEST 등 프로젝트 *LifeCycle포함되는 각 테스트를 지원해준다.

 

- Maven은 필요한 라이브러리를 특정 문서(pom.xml)에 정의해 놓으면 내가 사용할 라이브러리 뿐만 아니라

해당 라이브러리가 작동하는데에 필요한 다른 라이브러리들까지 관리하여 네트워크를 통해서 자동으로 다운받아 준다.


- Maven은 중앙 저장소를 통한 자동 의존성 관리를 중앙 저장소(아파치재단에서 운영 관리)는

라이브러리를 공유하는 파일 서버라고 볼 수 있고, 메이븐은 자기 회사만의 중앙 저장소를 구축할수도 있다.


- 간단한 설정을 통한 배포 관리가 가능 하다.

 

의존성 관리도구

 

의존성 관리도구에는 대표적으로 Maven, Gradle등이 있다.

관리도구가 하는 일은 위의 메이븐이 하는 일들과 같다.


*LifeCycle


미리 정해진 빌드순서
메이븐은 프레임워크이기 때문에 동작 방식이 정해져있고, 미리 정의하고 있는 빌드 순서가 있다. 

이를 라이프사이클(Lifecycle)이라 한다. 

*FEST(Fixtures for Easy Software Testing)

 

쉬운 소프트웨어 테스팅을 위한 도구

728x90
반응형

댓글