maven的setting文件-02
仓库与镜像
1.仓库分类
maven 的仓库分为本地仓库和远程仓库。
2.本地仓库
本地仓库就是储存在你自己电脑上的仓库
3.远程仓库
远程仓库也叫做中央仓库,默认的远程仓库是maven官方的仓库,maven官方仓库地址为:
https://repo.maven.apache.org/maven2/. 它的下载速度比较慢.
远程仓库虽然maven提供了一个拥有jar包比较全的, 但是由于它的下载速度比较慢,而且它那里的jar包也不是100%都全.所以市面上就有人建立了如aliyun等各种各样的远程仓库.
4.镜像仓库
maven官方仓库的地址在国外,访问比较慢,因此阿里巴巴就把maven官方仓库的jar包全部下载下来,放到自己国内的aliyun仓库,全部复制粘贴,一模一样,就跟镜像一样,所以也叫镜像仓库.
5.为什么要配置多个仓库
我们都知道,maven 的仓库分为本地仓库和远程仓库。默认的远程仓库叫做中央仓库,地址为:https://repo.maven.apache.org/maven2/
,它的下载速度比较慢,不做任何配置时,下载一个 dubbo 的 jar 包,就是从中央仓库下载的.
这个时候我们就可以为项目配置多个仓库地址,下载时会由上到下依次尝试,哪个仓库成功了,就停止尝试,因此可以把速度快的仓库配置在靠上位置
注意:其实配多个仓库的更主要原因是,某些 jar 包只在 A 仓库有,在 B 仓库没有,这时就得配置多个仓库了
6.在pom文件里用
<?xml version=”1.0” encoding=”UTF-8”?>
…aliyun http://maven.aliyun.com/nexus/content/groups/public central https://repo.maven.apache.org/maven2/
…
上面这种把仓库地址写在pom文件的做法很少用.
7.
- 首先
它是配置在 settings.xml 中, <repository>
一般配置在 pom.xml 中,位置不同 - 其次
的目的很单纯:就是为了加速,用镜像地址覆盖掉原始仓库的地址
用法示例:接下来配置镜像的 <mirrorOf>
为 central,在 settings.xml 中
<?xml version=”1.0” encoding=”UTF-8”?>
…aliyun central aliyun http://maven.aliyun.com/nexus/content/groups/public
…
就会覆盖掉 pom.xml 中真正的 <id>
为 central 的仓库,取而代之,即使配置了 id 为 central 的仓库,实际也会走 mirror 的下载
<?xml version=”1.0” encoding=”UTF-8”?>
…central https://repo.maven.apache.org/maven2/
…
注意:
- 最好重启 idea 让 mirror 生效
- 如果镜像的
<mirrorOf>
为*
号,则所有仓库的下载都会走 mirror
还没有评论,来说两句吧...