본문 바로가기

[ 프로그래밍 ]/프로그래밍 책

자바 세상의 빌드를 이끄는 메이븐

메이븐
카테고리 미분류
지은이 박재성 (한빛미디어, 2011년)
상세보기


'메이븐? 이게 결국 책으로 나왔구나.'

자바 환경설정이니 빌드니 배포니 하는 문제들로 정신 없을 당시에 지인께서 앤트나 메이븐을 사용해 보라고 추천을 해 준 적이 있었다. 자바도 이클립스의 사용도 시작한지 얼마 안된 시절이라 도무지 이해할 수 없는 것들의 연속이었다. 그도 그럴 것이 지금도 구글에 '메이븐'을 검색하면 '메이븐 랭귀지 센터'가 상위에 랭크 되는 것이 꼭 내 머리속에서 그러하다고 느낄 정도로 생소한 개념이었으니까 말이다.

메이븐은 Project Object Model(POM) 개념을 바탕으로 좀 더 편리하고 강력한 이점들을 제공해 주는 프로젝트 관리 도구이다. 보통 같은 기능을 수행하는 앤트 보다는 더 큰 프로젝트를 위해 사용한다고 하며, 빌드와 레포팅, 라이브러리의 관리, 프로젝트 설정 뿐만 아니라 문서화와 관련해서 강점을 보인다.

아래 그림은 IBM에서 제공하는 이클립스와 메이븐의 역할공간에 대한 그림이며, 조금 더 메이븐을 쉽게 이해하는 데에 도움이 된다.

 
메이븐을 사용해 본 경험이 있는 개발자라면 그 설정이 얼마나 복잡하고 이해하기 힘든 구조로 되어 있는지 잘 알 것이다. 게다가 국내에서는 온라인에서건 오프라인에서건 이렇다 할 설명을 찾기 힘든 것이 현실이다. 이 시점에 메이븐의 시장에 첫 선을 보인 이 책은 그것만으로도 이미 충분한 가치가 있다고 생각한다. 

책에서 독자는 메이븐의 사용을 적극 추천하지는 않는다. 다만 메이븐이 가지는 철학과 접근 방법을 이해하고 현재 사용하고 있는 빌드 툴에 비슷한 방식으로 접근할 수 있다면 좋겠다고 이야기 한다. 그만큼 메이븐은 가까이하기 어려운 빌드툴일지 모른다. 하지만 이런 걱정과는 다르게 저자는 이상적인 개발환경을 꿈꾸며 차분한 자세로 메이븐의 설치에서 부터 설정파일, 라이프사이클, 라이브러리 관리 등 기본적인 내용과 함께 이클립스 통합, 데이터베이스 통합 등의 작업, 그리고 프로파일과 배포, 문서관리, 저장소의 설치 및 활용, 리팩토링에 이르기까지 다양한 요소들에 대해 적극적으로 풀어 설명한다.
 
이 책을 통해, 개발자들이 단순, 반복적으로 실행하는 작업들을 자동화하고 업무에 효율성을 더 가질 수 있기를 기대해본다.

마틴 @ 마틴 블로그 닷 넷