寫在前面的話:此篇文章教程是在IntelliJ IDEA中搭建的maven項目。(建議eclipse黨快點轉IDEA吧,IDEA大法好。逃…
1.maven的安裝
前往Apache Maven官網點選
apache-maven-3.3.9-bin.zip
連結下載下傳3.3.9的版本即可。下載下傳後我将該目錄放到/Users/codingBoy/的目錄下,檔案名為apache-maven-3.3.9。這樣我們便成功安裝好maven管理工具,但這還不夠,還需要設定maven環境變量。
2.配置maven環境變量
打開終端,退到根目錄
/Users/codingBoy/
,輸入指令:
$ vi ~/.bash_profile
打開bash_profile檔案,然後添加如下兩行代碼:
| |
然後繼續退回到根目錄,輸入
$ source ~/.bash_profile
使bash_profile檔案添加的内容即刻生效。
接下來在終端輸入
mvn -v
,若出現如下内容,說明你的maven管理工具成功安裝并成功配置:
到此,Maven在mac系統下的安裝和配置即完成。接下來講解用maven進行項目管理的一些基礎知識。
3.建立第一個maven項目
建立maven項目有兩種方式,第一種是用指令行輸入代碼、運作即可生成;第二種是直接用IDEA建立web項目時選擇建立maven的web項目即可(IDEA相比eclipse的第一個優點在此就顯露:IDEA已經內建maven插件,是以我們可以直接在IDEA中建立maven項目;而eclipse中我們還要進行下載下傳maven插件等一系列操作,簡直不能再繁瑣。)。 這裡我們先介紹第一種在終端輸入指令的方式建立maven項目。
3.1使用指令行建立Maven項目
在終端的根目錄下輸入如下指令:
| |
指令解釋如下:
-
:表示使用的是maven指令。mvn
-
:表示使用generate這個插件為我們的maven項目自動生成一個maven骨架,即我們項目的工程結構(如下圖)。後邊跟的是該插件為我們建立工程結構所需要的一連串的參數。archetype:generate
-
:辨別項目的坐标元素之一,與DartifactId,Dpackaging,Dversion組成我們maven項目的坐标,四者唯一确定一個項目。它的值為我們的項目包名,我這裡的格式用的我的部落格網站字尾+我的使用者名+項目名組成。-DgroupId
-
:辨別項目的坐标元素之一,它的值為我們的項目名。我這裡指定我要生成的項目名為helloword。-DartifactId
-
:辨別項目的坐标元素之一,這裡值就跟DgroupId的值保持一緻即可。此屬性在指令行中可選。-Dpackage
-
:指定版本号。此屬性在指令行中可選-Dversion
-
:表示我們生成的工程結構為哪一種,這裡的屬性值為-DarchetypeArtifactId
表示生成工程目錄結構為quickstart的結構。其值還可以為maven-archetype-quickstart
表示生成的工程目錄結構為webapp的結構。maven-archetype-webapp
運作該指令,可看到終端中使用的maven指令自動為我們在下載下傳maven的各個依賴包,執行指令的過程時間可能比較久,完成時間取決于個人網絡狀況。
完成後我們可以在自己的根目錄下發現一個名為”helloword”項目名,說明我們成功在終端使用maven指令建立出一個maven項目,打開該helloword項目,會發現我們生成的maven項目的目錄布局為這樣的:
| |
沒錯,這就是我們通過指令行自動我們生成的maven項目的骨架,在maven項目的開發中,所有的源代碼放在檔案夾
/src/main/java/
下, 所有的單元測試代碼放入
/src/test/java/
。可以參考官方網站的Maven标準目錄 附加的一個标準的pom.xml被生成。這個POM檔案類似于Ant的build.xml檔案,它描述了整個項目的資訊,一切從目錄結構、項目的插件、項目依賴、如何建構這個項目等,關于pom的介紹我會在下文中進行講解,你也可以參考官方網站的POM官方指南
然後我們便可以打開IDEA-Import Project操作導入helloword包下pom.xml一路next即可打開該maven項目。
這樣我們便使用第一種使用maven指令行的方式建立了我們的maven項目。
3.2使用IDEA建立Maven項目
而第二種方式更加簡單,隻需打開IDEA-New Project,出現如下視窗:
選擇左邊的maven項目,然後點選右邊框框中的任意一種模版(根據選擇的模版生成我們的項目工程目錄結構,選擇上面講的webapp和quickstart都可,但是二者建立的目錄結構是有差别的,我們先選擇建立quickstart樣式的模版,然後選擇建立webapp樣式的模版,對比一下二者的目錄結構差別)即可next到這一步:
填寫我們的項目名和包名然後next到這一步:
然後繼續填寫我們的項目名後,點選finish完成建立,這樣我們便通過第二種方式直接用IDEA建立了我們的maven項目。建立的項目工程結構如圖:
發現App.java和AppTest.java圖示顯示不對,因為它為我們自動生成的pop.xml檔案中添加了依賴但是沒有自動引入jar包,需要我們點選右下角(也許你的出現在左上角?)的
Enable Auto-Import
:
然後我們的工程才算徹底搭建好,如下:
如上是采用的生成工程目錄的模版是
quickstart
的,接下來示範建立模版是
webapp
的,而往往我們的JavaWeb采用的工程模版就是通過webapp生成的,接下來示範通過webapp建立的maven項目,還是打開IDEA–>New Project,出現如下界面:
然後next和上述
quickstart
的步驟一樣,一直到finish,我們建立的maven項目工程結構如下:
和上述quickstart建立的模版差別一看便知,為了讓此maven項目符合官網上規定的标準工程結構,是以在IDEA中打開項目配置,添加項目沒有包如在src包下添加test包,在test包下添加java包和resources包,在main包下添加java包然後點選apply即可,如下圖:
到此我們便完成了第一個maven項目的建立,接下來我要進行Maven核心知識的講解,見下篇文章Maven核心知識(待更新)。