Maven
Maven是apache旗下的一個開源項目,是一款用于管理和構建java項目的工具
Maven的作用
依賴管理
方便快捷的管理項目依賴的資源(jar包),避免版本沖突問題
統一項目結構
提供標準、統一的項目結構
項目構建
標準跨平臺(Linux、Windows、MacOs)的自動化項目構建方式
介紹
Apache Maven 是一個項目管理和構建工具,它基于項目對象模型(POM)的概念,通過一小段描述信息來管理項目的構建
倉庫:用于存儲資源,管理各種jar包
? ? ? ? 本地倉庫:自己計算機上的一個目錄
? ? ? ? 中央倉庫:由Maven團隊維護的全球唯一的。倉庫地址:https://repo1.maven.org/maven2
? ? ? ? 遠程倉庫(私服):一般由公司團隊搭建的私有倉庫
安裝
IDEA集成Maven
創建Maven項目
Maven坐標
Maven 中的坐標是資源的唯一標識,通過該坐標可以唯一定位資源位置
使用坐標來定義項目或引入項目中需要的依賴
Maven 坐標主要組成
groupld:定義當前Maven項目隸屬組織名稱(通常是域名反寫,例如:com.itheima)
artif?ctid:定義當前Maven項目名稱(通常是模塊名稱,例如 order-service、goods-service)
version:定義當前項目版本號
<groupld>com.itheima</groupld>
<artifactld>maven-project01</artifactld>
<version>1.0-SNAPSHOT</version>
<dependency>
<groupld>ch.qos.logback</groupld>
<artifactld>logback-classic</artifactild>
<version>1.2.3</version>
</dependency>
導入Maven項目
方式一
方式二

依賴管理
依賴配置
依賴:指當前項目運行所需要的jar包,一個項目中可以引入多個依賴
藍色部分的信息是用來描述當前項目的,如果要添加當前項目所要運行時依賴的資源,就要在下面聲明一個標簽dependencies
groupId:組織名? ? ? artifactId:模塊名
點擊該按鈕才能在后面面板中添加依賴
注意事項:
如果引入的依賴,在本地倉庫不存在,將會連接遠程倉庫/中央倉庫,然后下載依賴。(這個過程會比較耗時,耐心等待
如果不知道依賴的坐標信息,可以到https://mvnrepository.com/中搜索
依賴傳遞
依賴具有傳遞性
排除依賴
排除依賴指的是主動斷開以來的資源,被排除的資源無需指定版本
依賴范圍
生命周期
Maven的生命周期就是為了對所有的maven項目構建過程進行抽象和統一
Maven中有3套相互獨立的生命周期:
●clean:清理工作
●default:核心工作,如:編譯、測試、打包、安裝、部署等
●site:生成報告、發布站點等
每套生命周期包含一些階段(phase),階段是有順序的,后面的階段依賴于前面的階段
階段運行是有先后順序的,先運行前面階段,再運行后面階段,而后面的階段是需要依賴前面階段的,也就是說在同一套生命周期中,運行后面的項目階段前面的也會運行
都是由Maven中的插件完成的