Maven的安裝,以及簡單的使用
今天,突然想用maven來部署專案,於是幾下筆記以待日後使用。
首先,官網下載maven。
然後解壓,解壓後配置環境變數。
開啟cmd,測試安裝成功與否:
如圖表示maven安裝成功;
後來在eclipse中使用maven:
首先找到conf中的seetings.xml檔案:
然後,開啟,將maven專案儲存到本地指定的庫如圖:
在eclipse中配置maven:
注意不要配置錯誤。
之後新建一個maven專案:
這是它的目錄結構:
開啟pom.xml
然後嘗試對maven專案進行compile,package等操作;
出現如圖,表示成功:
接下來,就可以在pom.xml中新增一些maven的外掛了,可以自己嘗試嘗試。
下面是pom.xml的一些解析,僅供參考:
每次新建的maven專案上都是顯示這樣,實際上我們使用的確是
,顯示的很不舒服,如果專案已經建好,可以右鍵properties直接修改,若是新建專案,可以在setting.xml中修改,如圖
maven 的依賴
如圖,三個maven專案
B依賴A,C依賴B
在B中,注入A的依賴,如圖
此時,run second的pom.xml: clean compile時會報錯,說找不到first的jar包,所以,依賴注入後,需要先跑first的pom.xml: clean package進行打包,然後run: install,此時再跑second的:clean compile便可以成功。成功過程如圖:
注入依賴後,對first操作:
再對first操作:
再對second操作:
最後便成功了:
third也是一樣的操作。
最後發現,如圖
third 依賴了first和second,這邊是依賴的傳遞。
然後third表示不想依賴first,只依賴second,便需要加入exclusions,如圖:
加入後,便發現first自動沒了:
maven依賴衝突。
1.短路優先
① A->B->C->X(JAR)
② A->D->X(JAR)
此時優先路徑短的版本即第②個。
2.先宣告先優先
如果路徑相同,誰先宣告,先解析誰。
maven 聚合
首先新建一個maven專案:
此時再配置pom.xml,如圖
主要修改<packaging>pom</packaging>,以及加moudles>
run :install後:
則成功!
maven 繼承
在first,second,third三個專案中都用了junit,所以可以通過繼承來減少jar包的呼叫
首先建一個maven專案:
修改parent 的pom.xml
注意版本號通過properties來設定。
其中src/test/java和src/main/java沒有作用,可以刪除,刪除之後,通過maven ->update project就行。
修改完成後,開啟first的pom.xml,進行修改如圖:
second和third同理可得。
maven構建一個web專案
新建一個專案,此時選擇webapp,如圖:
會出現index.jsp報錯,我將通過build path將tomcat包匯入,沒有的話,參考這個視訊https://www.imooc.com/video/8684,
然後,修改pom.xml,如圖:
完整專案的如圖:
如此,便完成了一個專案的搭建。
通過maven->run :clean package可以得到(第一次會download很多外掛,耐心等待即可):