maven系列之一簡單介紹了maven的基本信息,安裝和配置,大家對maven有一個大概的了解,但是在maven項目開發中遠遠不夠,為了進一步了解maven,現在我們介紹maven項目的創建和maven項目的結構。
第一部分:maven項目的創建
maven項目創建方式一:用命令
開始鍵+r=,確定,檢測maven的版本
輸入mvn -v
輸入mvn archetype:generate ,執行這個命令有點久,要有耐心,他會檢測setting.xml,不符合條件就會報錯。同時也會根據setting中的本地倉庫地址,把jar包,maven插件下載到本地倉庫中。所以要的時間很長。
下載成功后,會提示輸入,groupId,artifactId,version,輸入后,項目會生成的路徑在c盤用戶目錄下
2.maven創建項目的方式二:用eclipse,idea開發工具創建maven項目
一:eclipse
1、開啟eclipse,右鍵new——》other,如下圖找到maven project
2、選擇maven project,顯示創建maven項目的窗口,勾選如圖所示,Create a simple project
3、輸入maven項目的基本信息,如下圖所示:
4、完成maven項目的創建,生成相應的maven項目結果,如下所示,此處有部分結構是項目不需要的,我們需要去掉:
5、選擇項目,右鍵選擇Properties,進入屬性頁面,選擇到Maven菜單下,如下圖所示:
6、選擇java版本為1.7,並去掉其他兩項,如下圖:
7、點擊ok之后,再次回到項目結構,此時項目結構比較清晰,符合我們想要創建的maven項目
8、此時webapp下的結果還沒有顯示出來,因為此時我們還沒有配置此的項目為web項目,再次進去Properties配置,如下圖所示:
9、點擊Further configuration available...,如下:
10、配置src/main/webapp,並勾選生成web.xml的選項,如下:
11、確定之后,返回到maven菜單下去掉Dynamic Web Module的勾選,點擊ok,如下所示,webapp目錄結構顯示出來了:
12、此時還需要配置,src/main/webapp為“/”項目的根目錄,如下所示:
13、完成如上配置后,最后完成maven webapp項目結構如下圖所示:
第二部分:maven項目的結構
好的目錄結構可以使開發人員更容易理解項目,為以后的維護工作也打下良好的基礎。Maven2根據業界公認的最佳目錄結構,為開發者提供了缺省的標准目錄模板。Maven2的標准目錄結構如下:
src/main/java | Application/Library sources |
src/main/resources | Application/Library resources |
src/main/filters | Resource filter files |
src/main/assembly | Assembly descriptors |
src/main/config | Configuration files |
src/main/scripts | Application/Library scripts |
src/main/webapp | Web application sources |
src/test/java | Test sources |
src/test/resources | Test resources |
src/test/filters | Test resource filter files |
src/site | Site |
LICENSE.txt | Project's license |
NOTICE.txt | Notices and attributions required by libraries that the project depends on |
README.txt | Project's readme |
使用目錄模板,可以使 pom.xml 更簡潔。因為 Maven2 已經根據缺省目錄,預定義了相關的動作,而無需人工的干預。以 resources 目錄為例:
- src/main/resources,負責管理項目主體的資源。在使用Maven2執行compile之后,這個目錄中的所有文件及子目錄,會復制到target/classes目錄中,為以后的打包提供了方便。
- src/test/resources,負責管理項目測試的資源。在使用Maven2執行test-compile之后,這個目錄中的所有文件及子目錄,會復制到target/test-classes目錄中,為后續的測試做好了准備。
這些動作在 Maven1 中,是需要在 maven.xml 中使用<preGoal>或<postGoal>來完成的。如今,完全不需要在pom.xml中指定就能夠自動完成。在src和test都使用resources,方便構建和測試,這種方式本就已是前人的經驗。通過使用Maven2,使這個經驗在開發團隊中得到普及。