1. Maven的基本概念
1.1. Maven出現前項目開發存在的問題
- 同樣的代碼,因為在不同的機器或者不同的環境下編譯不成功
- 開發人員已經經過測試的代碼, 測試和配置人員下載下傳下來有問題
- 新加入的團隊成員不知道系統開發所需要的具體環境
- 每次checkout項目的時候,随便都是幾百M(大部分是jar包),頭疼
- 切換新項目時,我們要重新加入所依賴的jar包,而且又要上傳到代碼伺服器
- A項目組封裝了一個好的元件(jar),推薦給其他項目組使用,當出現了錯誤,修正以後,每個項目組要重新替換
- 測試人員每次測試都需要手動checkout版本.
1.2. 什麼是maven
Maven是基于項目對象模型(PROJECT OBJECT MODEL ->POM),可以通過一小段描述資訊來管理項目的建構,報告和文檔的軟體項目管理工具。
Maven是一個項目管理工具,它包含了一個項目對象模型 (Project Object Model),一組标準集合,一個項目生命周期(Project Lifecycle),一個依賴管理系統(Dependency Management System),和用來運作定義在生命周期階段(phase)中插件(plugin)目标(goal)的邏輯。
開發人員主要掌握兩個方面的知識:
- 項目建構
- 依賴管理
1.3. 什麼是建構
在企業團隊開發中 ,我們一般會将代碼統一儲存在代碼伺服器(VVS / CVS / SVN / GIT)中,每次我們都需要從代碼伺服器下載下傳最新代碼–>項目建構->應用。
如下圖所示