Maven是一個跨平臺的項目管理工具。 Maven主要服務於基於Java平臺的項目構建、依賴管理 和項目信息管理 。工具
綜上所述,Maven做爲一個構建工具,不只能幫助咱們自動化構建,還可以抽象構建過程,提供構建任務實現;它跨平臺,對外提供了一致的操做接口,這一切足以使他成爲優秀的,流行的構建工具。學習
Maven提供了中央倉庫,能幫咱們自動下載構建。 幾乎任何Java應用都會借用一些第三方的開源類庫,這些類庫均可經過依賴的方式引入到項目中來。隨着依賴的增多,版本不一致、版本衝突、依賴臃腫等問題都會接踵而來。幸運的是Maven提供了一個優秀的解決方案,它經過一個座標系統準確地定位每個構建(artifact),也就是經過一組座標Maven可以找到任何一個Java類庫(如Jar文件)。Maven給這個類庫世界引入了經緯,讓它們變得有秩序,因而咱們能夠藉助它來有序的管理依賴,輕鬆地解決那些繁雜的依賴問題。測試
Maven還能幫助咱們管理本來分散在項目中各個角落的項目信息,包括項目描述、開發者列表、版本控制系統地址、許可證、缺陷管理系統地址等。 除了直接的項目信息,經過Maven自動生成的站點,以及一些已有的插件,咱們還可以輕鬆得到項目文檔、測試報告、靜態分析報告、源碼版本日誌報告等很是有價值的項目信息。 使用Maven還有一個額外的好處,即Maven對於項目目錄結構、測試用例命名方式等內容都有既定的規則,只要遵循了這些成熟的規則,用戶在項目間切換的時候就免去了額外的學習成本,能夠說是約定優於配置(convention Over configuration)插件