什麼是Maven
Maven是一個採用純Java編寫的開源項目管理工具, Maven採用了一種被稱之爲Project Object Model (POM)概念來管理項目,所有的項目配置信息都被定義在一個叫做POM.xml的文件中..
Maven是一款跨平臺的項目管理工具,是一個開源的項目…
Maven主要服務於基於Java平臺的項目構建、依賴管理和項目信息管理…
POM怎麼理解呢???
- 我們使用Java是面向對象編程,對象就是我們的類
- 而Maven是面向項目,把我們的項目看做成是一個對象來進行管理
爲什麼要使用Maven??
在沒有使用Maven之前,我們的jar包是不是非常雜亂???看一下我存放jar包的地方
在沒有學習Maven之前,我還想過把這些jar包一一整理出來,萬一硬盤壞了,那我的jar包又要去重新找了..而且由於jar包版本的問題,已經喫過不少虧…這就需要大量時間去整理jar包了…
曾經想手動打jar包,結果Intellij idea好像不太支持這種功能??【我還沒找到】….於是只能依靠原生的jar 命令去打jar包了,過了一陣子,想重新打jar包的時候,又忘記命令了…非常苦惱…
而我們的Maven就非常好地解決了上面這兩種情況了,當然了,Maven的功能並不是只有這麼一丟丟,我只是舉了兩個小例子而已…隨着我們的學習,你將會看到Maven的強大之處…
Maven可以管理項目的整個聲明週期,包括清除、編譯,測試,報告、打包、部署等等。
自動構建項目
- 軟件開發: 可行性分析、需求分析、軟件設計、軟件開發、發佈、運維
- 軟件構建: 軟件已經開發完畢,需要構建成一個產品進行發佈
構建步驟: - 清除–> 編譯–>測試–>報告–>打包(jar\war)–>安裝–>部署到遠程 maven可以通過一個命令實現自動構建軟件項目
Maven擁有“約定優於配置“這麼一個理念,也就是說,把一些規範約定下來,人們就這麼用!如果我們事先約定好所有項目的目錄結構,標準開發過程(編譯,測試) , 所有人都遵循這個約定。軟件項目的管理就會變得簡單很多。比如:如何過馬路(紅燈停綠燈行),如何開門,關門等。
安裝Maven
去官網下載Maven軟件,解壓過後就算安裝完畢了…
配置環境變量
因爲Maven是由Java編寫的,因此想要使用Maven,首先要配置Java的環境變量…
檢測安裝Maven是否成功,在控制檯上打上 mvn -version就行了…
Maven目錄結構
- bin:含有mvn運行的腳本
- boot:含有plexus-classworlds類加載器框架
- conf:含有settings.xml配置文件
- lib:含有Maven運行時所需要的java類庫
- Settings.xml 中默認的用戶庫: ${user.home}/.m2/repository[通過maven下載的jar包都會存儲到指定的個人倉庫中]
- Maven默認倉庫下載地址在: maven的lib目錄下maven-model-builder-3.0.4.jar的pom.xml中
在我們Maven中,有本地倉庫這麼一個概念,我們可以在settings.xml配置文件中修改本地倉庫的位置,比如我把本地倉庫放到桌面上