天天看點

[Maven實戰](1)安裝與配置

1. maven簡介

maven是一個跨平台的項目管理工具。作為apache組織的一個頗為成功的開源項目,其主要服務于基于java平台的項目建立,依賴管理和項目資訊管理。

1.1 依賴管理

maven提供了中央倉庫,能幫助我們自動下載下傳構件。在這個開源的年代裡,幾乎任何java應用都會借用一些第三方的開源類庫,這些開源類庫都可通過依賴的方式引入到項目中來。随着依賴的增多,版本不一緻,版本沖突,依賴臃腫等問題都會接踵而至。maven提供了一個優秀的解決方案,它通過一個坐标系統準确的定位每一個構件(artifact),也就是通過一組坐标就能找到任何一個java類庫(如jar檔案)。maven輕松的解決了那些繁雜的依賴問題。

maven還能幫助我們管理原本分散在項目中各個角落的項目資訊,包括項目描述,開發者清單,版本控制系統位址等。

1.2 建構管理

它是一個強大的建構工具,能夠幫助我們自動化建構過程,從清理,編譯,測試到生成報告,再到打包和部署。我們不需要一遍又一遍的輸入指令,一次又一次的點選滑鼠,我們要做的是使用maven配置好項目,輸入簡單的指令,maven會幫助我們處理那些繁瑣的任務。

2. maven的安裝和配置(windows)

2.1 檢查jdk安裝

在安裝maven之前,首先要确認已經安裝了jdk。maven可以運作在jdk1.4及以上版本。

打開windows的指令行,運作如下指令來檢查jdk的安裝:

<code>echo %java_home%</code>

<code>java -version</code>

[Maven實戰](1)安裝與配置

以上指令首先檢查了java_home是否指向了正确的jdk目錄,接着運作java指令。

2.2 下載下傳maven

下載下傳位址:點選打開連結

其中包含了針對不同平台的各種版本的maven下載下傳檔案。

2.3 本地安裝

将安裝檔案解壓到指定的目錄中(例如:d:\program files (x86))。然後進行環境變量的設定。

桌面上右擊“我的電腦”,點選屬性,點選進階系統設定,再點選環境變量,在系統變量中建立一個變量m2_home,變量值為maven的安裝目錄即d:\program files (x86)\apache-maven-3.3.9。然後修改path系統變量,變量值末尾加上%m2_home%\bin。注意:多個值之間分号隔開。

[Maven實戰](1)安裝與配置
[Maven實戰](1)安裝與配置

檢查maven是否安裝成功,打開新的windows的指令行,運作如下指令來檢查maven的安裝:

<code>echo %m2_home%</code>

<code>mvn -v</code>

運作結果如下圖所示:

[Maven實戰](1)安裝與配置

以上指令首先檢查了m2_home是否指向了正确的maven目錄,接着運作maven指令,以檢查windows是否找到正确的mvn執行腳本。

2.4 安裝目錄分析

2.4.1 m2_home

設定m2_home環境變量指向maven的安裝目錄。該目錄的結構和内容:

<code>bin</code>

<code>boot</code>

<code>conf</code>

<code>lib</code>

<code>licens.txt</code>

<code>notice.txt</code>

<code>readme.txt</code>

(1)bin:該目錄包含了mvn運作的腳本,這些腳本用來配置java指令。

(2)boot:該目錄隻包含一個檔案,以maven 3.3.9 為例,該檔案為plexus-classworlds-2.5.2.jar。plexus-classworlds是一個類加載器架構,相對于預設的java類加載器,它提供了更豐富的文法以友善設定,maven使用該架構加載自己的類庫。

(3)conf:該目錄包含了一個非常重要的檔案setting.xml。直接修改該檔案,就能在機器上全局的定制maven的行為。

(4)lib:該目錄包含了所有maven運作時需要的java類庫。

(5)licens.txt:該檔案記錄了maven使用的軟體許可證

(6)notice.txt:該檔案記錄了maven包含的第三方軟體

(7)readme.txt:該檔案包含了maven的簡要介紹

2.4.2 ~/.m2

在我這目錄是:c:\users\administrator\.m2

預設情況下該檔案夾放置了maven本地倉庫.m2/repository。所有的maven構件都被存儲到該倉庫中,以友善重用。

預設情況下處了repository倉庫之外就沒有其他目錄和檔案了,不過大多數maven使用者需要複制m2_home/conf/setting.xml檔案到~/.m2/setting.xml。