1.maven簡介(慕課網)
阿新 • • 發佈:2018-12-07
場景:需要搭建一個SSM架構的專案,首先需要手動在各個框架的官網下載相關jar包,然後放置到專案的classpath路徑下,很麻煩,而maven就是這樣一個能夠幫助我們管理專案依賴的工具。
1.介紹
Maven是一個專案管理工具,它包含了一個專案物件模型 (Project Object Model),一組標準集合,一個專案生命週期(Project Lifecycle),一個依賴管理系統(Dependency Management System),和用來執行定義在生命週期階段(phase)中外掛(plugin)目標(goal)的邏輯。當你使用Maven的時候,你用一個明確定義的專案物件模型來描述你的專案,然後Maven可以應用橫切的邏輯,這些邏輯來自一組共享的(或者自定義的)外掛。
2.maven壓縮包目錄結構
• bin:二進位制指令碼檔案目錄
• boot:包含一個類載入器的框架, maven使用它載入自己的類庫
• conf:配置檔案目錄,最重要的是settings.xml
• lib:maven執行所需要的jar包檔案目錄
3.maven專案結構
• /src/main/java/package:專案的原始碼目錄
• /src/test/java/package:專案測試程式碼目錄
• /src/main/webapp:web資原始檔目錄
• /src/main/resources:配置檔案目錄
• /pom.xml: maven配置檔案,各種依賴配置
• /target: maven自動生成,包括編譯後的class檔案,匯出的jar包
4.maven自動建立目錄骨架
mvn archetype:generate -DgroupId=com.imooc.maven -DartifactId=maven-service -Dversion=1.0.0SNAPSHOT -Dpackage=com.imooc.maven.demo
-DgroupId=組織名,公司網址反寫+專案名
-DartifactId=專案名+模組名
-Dversion=版本號
-Dpackage=原始碼所在的包名
5.座標
maven專案中的任何一個依賴jar或外掛都稱為構建,每一個構建通過座標作為其唯一的標識,其中groupId、artifactId、version都能組合成座標。
6.倉庫
(1) 本地倉庫
預設是.m2/Repository,可以在settings.xml中修改
<localRepository>D:\maven\apollo\repository</localRepository>
(2).全球中央倉庫
在pom.xml檔案中新增依賴,maven首先會在本地倉庫中查詢依賴jar包,找不到的情況下,maven會到全球中央倉庫http://repo.maven.apache.org.maven2下查詢,找不到會報錯。
(3).映象倉庫
因為在國內下載全球中央倉庫中的依賴會很慢,所以國內一些組織或者公司會把中央倉庫內的jar包下載下來建立自己的maven倉庫,比較有名的有阿里雲或者蘇寧映象倉庫。更改映象地址同樣需要在settings.xml中修改。
<mirrors>
<mirror>
<id>suning_maven_repo</id>
<mirrorOf>*</mirrorOf>
<name>Suning maven server</name>
<url>http://maven.cnsuning.com/content/groups/public</url>
</mirror>
</mirrors>