Maven作為構建工具,現在項目開發使用的越來越多,相對於ant和gradle,我更喜歡使用maven,先總結maven使用的一系列知識:
一、maven相關的網址:
|
名稱
|
地址
|
其他
|
|
maven官網
|
官網
|
|
|
maven中心倉庫
|
jar/war存儲的地方
|
maven的安裝方法網絡上有很多,在此就不介紹了。
二、maven基本概念相關
1、maven:maven是項目管理與構建工具:
項目管理:項目中jar包的聲明式依賴與管理問題
構建工具:maven可以通過一個命令實現自動構建軟件項目
ps:
軟件構建:軟件已經開發完畢,需要構建成一個產品進行發布
構建步驟:清除-->編譯-->測試-->報告-->打包(jar/war)-->安裝-->部署到遠程
2、pom:項目對象模型,是從粗粒度來將項目作為一個對象進行構建操作。
3、maven 解決的問題:
- jar包的聲明式依賴管理與管理
- 自動構建、發布項目
4、maven、ant、svn的區別
- maven與ant之間的區別
都是軟件構建工具、軟件管理工具,maven比ant更加強大,已經取代了ant
maven優點:
- jar包聲明式依賴
- jar包倉庫
- maven 與svn的區別
1.maven 軟件構建工具,是軟件源碼已經完畢,需要構建,需要部署與發布
2. svn 是版本控制工具,是協同開發工具
svn 倉庫 :
1. 項目源碼保存
2. 歷史版本的備份
3. 每一次版本的修改情況
需求: maven(ant)+svn(git)
5、maven 軟件目錄介紹
lib :共享庫。maven軟件依賴的lib jar包
boot :plexus-classworlds-2.5.1.jar 該文件是jar包下載的引擎 ,通過該工具來下載jar包:
- 第三方項目依賴的jar包
- maven本身的軟件構建的生命周期插件的jar包,默認是沒有集成這些插件 清除插件 --編譯插件 -- 打包插件
conf: C:\apache-maven-3.2.1\conf\settins.xml maven 配置文件 :配置的是本地倉庫地址 以及服務器的驗證等信息
bin :maven 可執行的命令
- 測試maven是否安裝成功
命令行:mvn -version
配置:環境變量path="C:\apache-maven-3.2.1\bin"
java_home
6、幾個概念的關系:中心倉庫、本地倉儲、私服等幾個概念的關系如下圖所示
圖 1 幾個概念之間的關系
三、maven項目
1、約定優於配置
2、生命周期命令:
- mvn clean :清除(target包)
- mvn compile :編譯
- mvn package :打包(jar/war)
- mvn clean install :
安裝到本地倉庫
-mvn deploy :部署 ,部署到私服 (局域網或者是外網)
3、maven坐標
maven通過坐標的概念來唯一標識jar包或者war包
(1). 坐標的組成: groupId + artifactId+ version
- groupId:組id ,機構名,公司名:好比公司的id,或者是公司包名
alibaba ——-》高德--》5.01版本
- artifactId:構建物id ,產品名或者產品的id
- version :版本號
(2). jar包組成:
artifactId-version.jar
四、私服的搭建
總結:如果上面的知識都能夠弄清楚的話,maven的使用問題就不大了。歡迎大家共同交流學習。
