一、maven下載 地址:http://maven.apache.org/download.cgihtml
二、解壓並配置settings.xml文件java
三、Eclipse配置web
四、訪問中央倉庫地址:https://mvnrepository.comspring
5.新建Maven項目apache
點擊【next】json
選maven-archetype-quickstart後,nextapi
小插曲: 原址:http://www.javashuo.com/article/p-tlgsizqt-ec.htmltomcat
Archetype,骨架的意思。mvc
Archetype是什麼?app
簡單的說,Archetype是Maven工程的模板工具包。一個Archetype定義了要作的相同類型事情的初始樣式或模型。這個名稱給咱們提供來了一個一致的生成Maven工程的方式。Archetype會幫助做者給用戶建立Maven工程模板,並給用戶提供生成相關工程模板版本的參數化方法。
使用Archetype提供的好的方法,是開發者可以使用最佳實踐來快速的構建和組織一致化的工程。在Maven工程中,咱們努力使用Archetype來儘量快的給用戶提供示例工程,同時也會把Maven的最佳實踐介紹給新的用戶。一個新的用戶能夠使用工做中的Maven工做做爲跳板來研究更過的Maven中功能。咱們也能夠使用Archetype的添加機制,這樣就意味着容許咱們抓取Archetype中項目片斷,並把它們添加到既存的工程中。Maven網站的Archetype就是很好的例子。例如,你能夠使用「quick start archetype」來生成一個工程,而後就能夠經過其中既存的「site archetype」來快速的建立一個網址工程。你可以使用Archetype來作不少這樣的事情。
在你的團隊中可能想要標準化的J2EE開發,這須要你提供EJBs、或者是WARs、或者是Web services的原型。一旦在你團隊資源庫中建立和部署這些原型,它們就能夠在你團隊內共享使用。
如何使用Archetype
要基於Archetype來建立一個新的工程,須要像下面示例這樣來調用:
mvn archetype:generate
已有的Archetypes
Archetype ID |
說明 |
maven-archetype-archetype |
一個樣例原型 |
maven-archetype-j2ee-simple |
簡單的J2EE應用程序樣例 |
maven-archetype-mojo |
Maven插件樣本的示例 |
maven-archetype-plugin |
Maven插件樣本 |
maven-archetype-plugin-site |
Mave插件網站的樣例 |
maven-archetype-portlet |
JSR-268門戶樣例 |
maven-archetype-quickstart |
Maven工程樣例 |
maven-archetype-simple |
一個簡單的Maven工程 |
maven-archetype-site |
Maven網站的樣例,它演示了對諸如APT、XDoc和FML等文檔類型的支持,並演示了若是把網站國際化(i18n) |
maven-archetype-site-simple |
Maven網站樣例 |
maven-archetype-webapp |
Maven的Webapp工程樣例
|
1. maven-archetype-quickstart
默認的Archetype,基本內容包括:
一個包含junit依賴聲明的pom.xml
src/main/java主代碼目錄及一個名爲App的類
src/test/java測試代碼目錄及一個名爲AppTest的測試用例
2. maven-archetype-webapp
一個最簡單的Maven war項目模板,當須要快速建立一個Web應用的時候能夠使用它。生成的項目內容包括:
一個packaging爲war且帶有junit依賴聲明的pom.xml
src/main/webapp/目錄
src/main/webapp/index.jsp文件
src/main/webapp/WEB-INF/web.xml文件
小小插曲:
groupid和artifactId被統稱爲「座標」是爲了保證項目惟一性而提出的,若是你要把你項目弄到maven本地倉庫去,你想要找到你的項目就必須根據這兩個id去查找。
groupId通常分爲多個段,這裏我只說兩段,第一段爲域,第二段爲公司名稱。域又分爲org、com、cn等等許多,其中org爲非營利組織,com爲商業組織。舉個apache公司的tomcat項目例子:這個項目的groupId是org.apache,它的域是org(由於tomcat是非營利項目),公司名稱是apache,artigactId是tomcat。
好比我建立一個項目,我通常會將groupId設置爲cn.xiaobing,cn表示域爲中國,xiaobing是我我的姓名,artifactId設置爲api_methods,表示你這個項目的名稱是api_methods,依照這個設置,你的包結構最好是cn.xiaobing.api_methods打頭的,若是有個Student類,它的全路徑就是cn.xiaobing.api_methods.Student
點擊Finish完成建立:
6.項目配置
(1) 添加Source Folder
Maven規定,必須建立如下幾個Source Folder
src/main/resources
src/main/java
src/test/resources
src/test/java
添加以上的Source Folder
建立好後的目錄以下:
(2) 配置配置Build Path
設定4個文件夾的輸出Output folder,雙擊修改分別修改輸出路徑爲
src/main/resources 對應 target/classes
src/main/java 對應 target/classes
src/test/resources 對應 target/test-classes
src/test/java 對應 target/test-classes
(3) 設定Libraries
配置完Build Path後目錄以下:
7.如需導入項目依賴如:fastjson
拷貝到pom.xml文件中,保存便可!
使用maven是爲了更好的幫項目管理包依賴,maven的核心就是pom.xml。當咱們須要引入一個jar包時,在pom文件中加上<dependency></dependency>就能夠從倉庫中依賴到相應的jar包。 如今有這樣一個場景,有兩個web項目A、B,一個java項目C,它們都須要用到同一個jar包:common.jar。若是分別在三個項目的pom文件中定義各自對common.jar的依賴,那麼當common.jar的版本發生變化時,三個項目的pom文件都要改,項目越多要改的地方就越多,很麻煩。這時候就須要用到parent標籤, 咱們建立一個parent項目,打包類型爲pom,parent項目中不存聽任何代碼,只是管理多個項目之間公共的依賴。在parent項目的pom文件中定義對common.jar的依賴,ABC三個子項目中只須要定義<parent></parent>,parent標籤中寫上parent項目的pom座標就能夠引用到common.jar了。 上面的問題解決了,咱們在切換一個場景,有一個springmvc.jar,只有AB兩個web項目須要,C項目是java項目不須要,那麼又要怎麼去依賴。若是AB中分別定義對springmvc.jar的依賴,當springmvc.jar版本變化時修改起來又會很麻煩。解決辦法是在parent項目的pom文件中使用<dependencyManagement></dependencyManagement>將springmvc.jar管理起來,若是有哪一個子項目要用,那麼子項目在本身的pom文件中使用 <dependency> <groupId></groupId> <artifactId></artifactId> </dependency> 標籤中寫上springmvc.jar的座標,不須要寫版本號,能夠依賴到這個jar包了。這樣springmvc.jar的版本發生變化時只須要修改parent中的版本就能夠了。 --------------------- 原文https://blog.csdn.net/qq_41254677/article/details/81011681
8.總結:不足之處後續修改補充,分享給須要的人!