- Maven是一個(gè)項(xiàng)目管理工具乘综,基于項(xiàng)目對象模型(POM)绷跑,它主張遵循
"約定優(yōu)于配置"
這個(gè)思想 - 本地倉庫(localRepository)
Maven默認(rèn)的本地的倉庫目錄是~/.m2/repository/
,可以更改本地倉庫的位置枪芒,只要修改settings.xml文件中的localRepository屬性就可以 - 配置文件
Maven的安裝目錄下,conf/ 目錄包含了一個(gè)全局的 settings.xml文件猪狈,該文件包含了用戶相關(guān)的認(rèn)證抛蚁,倉庫和其它信息的配置陈醒,用來自定義 Maven 的行為。 - Pom文件
最基礎(chǔ)文件瞧甩,該文件中定義了項(xiàng)目的坐標(biāo)钉跷,以及項(xiàng)目所需依賴關(guān)系和插件行為。一個(gè)Maven坐標(biāo)可以用來唯一標(biāo)識一個(gè)項(xiàng)目肚逸,一個(gè)依賴爷辙,或者M(jìn)aven POM 里的一個(gè)插件,坐標(biāo)由groupId, artifactId, version 和 packaging組成 -
Maven主要做的是兩件事:
- 統(tǒng)一開發(fā)規(guī)范與工具
- 統(tǒng)一管理jar包
Maven還可以管理項(xiàng)目的整個(gè)聲明周期朦促,包括編 譯膝晾,構(gòu)建,測試务冕,發(fā)布血当,報(bào)告等等
-
環(huán)境
- Java開發(fā)環(huán)境(JDK)
- maven下載地址:http://maven.apache.org/release-notes-all.html
xxx-src.zip 表示源代碼
-
安裝
下載 Maven 其實(shí)就是一個(gè)壓縮包禀忆,解壓一下
配置一下環(huán)境變量
MAVEN_HOME = D:\maven\apache-maven-3.2.3
MAVEN_OPTS = -Xms128m -Xmx512m
(可選)-
在path變量末尾加入
;%MAVEN_HOME%\bin;
(前面注意分號)
以上M2_HOME 是必須要配置的臊旭,如果想讓 Maven 跑得更快點(diǎn),可以根據(jù)自己的情況來設(shè)置 MAVEN_OPTS箩退。
-
驗(yàn)證是否安裝成功离熏,打開 cmd,輸入:
echo %MAVEN_HOME%
或者mvn -v
或mvn -version
- Maven倉庫
使用 Maven 給我們帶來的最直接的好處乏德,就是統(tǒng)一管理jar 包撤奸,這些 jar 包存放在您的 本地倉庫 中,默認(rèn)地址位于 C:\Users\用戶名.m2
目錄下喊括。
開發(fā)項(xiàng)目時(shí)項(xiàng)目首先會(huì)從本地倉庫中獲取 jar 包胧瓜,當(dāng)無法獲取指定 jar 包的時(shí)候,本地倉庫會(huì)從 遠(yuǎn)程倉庫(或 中央倉庫) 中下載 jar 包郑什,并“緩存”到本地倉庫中以備將來使用府喳。
遠(yuǎn)程倉庫(中央倉庫)是 Maven 官方提供的,可通過 http://search.maven.org/來訪問蘑拯。這樣一來钝满,本地倉庫會(huì)隨著項(xiàng)目的積累越來越大。通過下面這張圖可以清晰地表達(dá)項(xiàng)目申窘、本地倉庫弯蚜、遠(yuǎn)程倉庫之間的關(guān)系。
-
修改 maven 本地倉庫位置:
找到maven 下的conf
下的settings.xml
配置文件
然后把本地相應(yīng)的路徑值寫到里面去就行了:
<!--Maven就會(huì)將下載的類庫保存到D:\maven\repository中剃法。-->
<localRepository>D:\maven\repository</localRepository>
驗(yàn)證配置是否成功碎捺,控制臺輸入:mvn help:system
該命令會(huì)打印出所有的java系統(tǒng)屬性和環(huán)境變量。這些信息對我們?nèi)粘5木幊坦ぷ骱苡袔?/em>
如果沒有任何問題,執(zhí)行完該命令之后收厨,在D:\maven\repository下面就會(huì)多出很多文件晋柱,這些文件就是maven從中央倉庫下載到本地倉庫的文件,maven已經(jīng)開始為我們工作了诵叁。
- 修改Maven倉庫地址
maven倉庫用過的人都知道雁竞,國內(nèi)有多么的悲催。還好有比較好用的鏡像可以使用拧额。
在maven的settings.xml 文件里配置mirrors的子節(jié)點(diǎn)碑诉,添加如下mirror
<mirrors>
<!-- 把鏡像地址改成阿里云maven私服 -->
<!--默認(rèn)是從maven官方倉庫下載的,添加下面這段代碼可以改為阿里云私服侥锦,速度能快一點(diǎn)-->
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
</mirrors>
配置完畢联贩!
- 參考
<!--MAVEN國內(nèi)代理-->
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
<mirror>
<id>central</id>
<name>Maven Repository Switchboard</name>
<url>http://repo1.maven.org/maven2/</url>
<mirrorOf>central</mirrorOf>
</mirror>
<mirror>
<id>repo2</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://repo2.maven.org/maven2/</url>
</mirror>
<mirror>
<id>ibiblio</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://mirrors.ibiblio.org/pub/mirrors/maven2/</url>
</mirror>
<mirror>
<id>jboss-public-repository-group</id>
<mirrorOf>central</mirrorOf>
<name>JBoss Public Repository Group</name>
<url>http://repository.jboss.org/nexus/content/groups/public</url>
</mirror>
<mirror>
<id>maven.net.cn</id>
<name>oneof the central mirrors in china</name>
<url>http://maven.net.cn/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>