Maven倉庫分爲:本地倉庫 和 遠程倉庫bash
1.本地倉庫:即 ~/.m2/setting.xml 中的 localRepository 元素的值。網絡
2.遠程倉庫:中央倉庫-廣域網的倉庫,私服--局域網內的倉庫maven
默認遠程倉庫:佈局
<project> ..... <repositories> <repository> <!--Maven 默認遠程倉庫 id 爲central,一樣的倉庫ID會覆蓋--> <id>central</id> <name>Maven Repository Switchboard</name> <url>http://repo1.maven.org/maven2</url> <!--表示佈局是Maven2和3 的默認佈局,不是Maven1的佈局--> <layout>default</layout> <!--控制快照版構件--> <snapshosts> <enabled>false</enabled> </snapshosts> </repository> <repositories> ..... </project>
遠程倉庫配置:url
<project> ..... <!--聲明遠程倉庫--> <repositories> <!--聲明一個或者多個repository元素(遠程倉庫)--> <repository> <!--Maven 默認遠程倉庫 id 爲central,一樣的倉庫ID會覆蓋--> <id>倉庫聲明惟一ID</id> <name>倉庫名稱</name> <url>倉庫地址</url> <!--控制發佈版構件--> <releases> <!-- true:開啓 false:關閉--> <enabled>true</enabled> </releases> <!--控制快照版構件--> <snapshosts> <enabled>true</enabled> <!--控制更新頻率,默認 daily(天天更新),never(從不),always(每次),interval:X(每隔X分鐘更新)--> <updatePolicy>daily<updatePolicy> <!--配置檢查檢驗和文件的策略,默認 warn(構建輸出警告),fail(遇到校驗和錯誤則構建失敗), ignore(忽略校驗和錯誤)--> <checksumPolicy>ignore</checksumPolicy> </snapshosts> <!--表示佈局是Maven2和3 的默認佈局,不是Maven1的佈局--> <layout>default</layout> </repository> <repositories> ..... </project>
認證:有些遠程庫須要身份認證,在settings.xml 中配置認證信息spa
<settings> ... <servers> <server> <id>遠程倉庫ID<id> <name>用戶名</name> <password>密碼</password> </server> </servers> ... </settings>
部署至遠程倉庫代理
<project> ... <distributionManagement> <!--發佈版本構件的倉庫--> <repository> <id>遠程倉庫的惟一標識</id> <name>名稱</name> <url>倉庫地址</url> </repository> <!--快照版本的倉庫--> <snapshotRepository> <id>遠程倉庫的惟一標識</id> <name>名稱</name> <url>倉庫地址</url> </snapshotRepository> </distributionManagement> ... </project>
命令:code
mvn clean deploy #發佈到遠程倉庫 mvn clean install-U #強制讓Maven檢查更新,忽略<updatePolicy>的配置
遠程倉庫下載和部署到遠程倉庫,須要認證,配置方式都同樣。server
倉庫鏡像:xml
<settings> ... <!--根據網絡須要指向的一個代理--> <mirrors> <mirror> <id>鏡像倉庫惟一標識</id> <name>鏡像倉庫名稱</name> <url>地址</url> <!--mirrorOf的值爲 * 表明全部Maven遠程倉庫鏡像 external:* 表明全部不在本機上的遠程倉庫 repo1,repo2 表明匹配repo1,repo2 兩個倉庫 *,!repo1 表明匹配除repo1的全部遠程倉庫--> <mirrorOf>遠程倉庫ID<mirrorOf> </mirror> <mirrors> ... </settings>