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>