Maven仓库

Stella981
• 阅读 478

maven仓库分为本地仓库、远程仓库。

项目引用依赖时,先从本地仓库按照坐标查找,如果没有找到则到远程仓库查找,如果还没有就报错。

设定本地仓库

修改setting.xml文件配置,自定义本地仓库路径。本地仓库只有一个。

<localRepository>/path/to/local/repo</localRepository>

设定远程仓库

修改pom.xml文件配置。远程仓库可以有多个。

id为远程仓库的唯一标识,如果将自定义远程仓库id设为central,则会将默认的远程仓库覆盖。

releases表示发布版本构件。

snapshots表示快照版本构件。

enabled开启状态。

updatePolicy表示maven从远程仓库检查更新的频率。

checksumPolicy表示检验设定。如果值为ignore则完全忽略校验和错误。如果值为warn则maven遇到校验和错误就让构建失败。

<repository>
    <id>iSkyCode</id>
    <name>iSkyCode</name>
    <url></url>
    <layout>default</layout>
    <releases>
        <enabled>false</enabled>
        <updatePolicy>daily</updatePolicy>
        <checksumPolicy>ignore</checksumPolicy>
     </releases>
     <snapshots>
         <enabled>false</enabled>
         <updatePolicy>daily</updatePolicy>
         <checksumPolicy>ignore</checksumPolicy>
     </snapshots>
</repository>

免费远程仓库

Sonatype Nexus    repository.sonatype.org

MVNrepository    mvnrepository.com

阿里巴巴    maven.aliyun.com

Jboss    repository.jboss.com

*    maven.ibiblio.org

默认中央仓库

repo1.maven.org

中央仓库认证

认证信息需要配置在setting.xml配置文件中。

<settings>
    <servers>
        <server>
            <id>iSkyCode</id>
            <username>repo-user</username>
            <password>repo-pwd</password>
        </server>
    </servers>
</settings>

发布构件

<distributionManagement>
    <repository>
        <id>iSkyCode-releases</id>
        <name>releases-repo</name>
        <url></url>
    </repository>
    <snapshotRepository>
        <id>iSkyCode-snapshot</id>
        <name>snapshot-repo</name>
        <url></url>
    </snapshotRepository>
</distributionManagement>

镜像

A仓库可以提供B仓库存储的所有内容,则A称为B的镜像。

如果在setting中指定A为B的镜像,则所有B的访问都会被指向A。

mirrorOf指定了镜像的源仓库。

<settings>
    <mirrors>
        <mirror>
            <id>repo</id>
            <name>one of the central mirrors</name>
            <url></urs>
            <mirrorOf>central</mirrorOf>
        </mirror>
    </mirrors>
</settings>

拓展配置

匹配所有远程仓库。

<mirrorOf>*</mirrorOf>

匹配所有远程仓库,使用localhost的除外,使用file://协议的除外。即所有不在本机的远程仓库。

<mirrorOf>external:*</mirrorOf>

匹配多个仓库,使用逗号分隔。

<mirrorOf>repo1,repo2,repo3</mirrorOf>

匹配所有远程仓库,某个仓库除外。

<mirrorOf>*,!repo1</mirrorOf>

注意:仓库设置镜像以后,只会访问镜像仓库。如果镜像仓库停止服务,也不会自动访问被镜像的仓库。

仓库搜索服务

Sonatype Nexus

MVNbrowser

MVNrepository

点赞
收藏
评论区
推荐文章
皮卡皮卡皮 皮卡皮卡皮
2年前
git 本地代码提交到远程仓库
git将本地代码添加到远程仓库1.本地初始化使用gitinit进行初始化可以使用lsa就可以看到.git文件2.创建远程仓库点击复制仓库地址3.连接远程仓库shellgitremoteaddoriginhttps://gitee.com/test/test.git4.将远程仓库的文件pull到本地gitpullrebase
Wesley13 Wesley13
2年前
gradle配置本地mavn仓库 mavenLocal() 时的bug
最近在学习Gradle,在配置maven仓库时遇到一个很奇怪的问题。因为之前已经在自己机器上下载了一些maven的本地缓存,所有在使用gradle时想优先从本地的仓库中下载jar,查看了官方的userguide文档,发现其中有这么一段:大概意思是说使用mavenLocal()配置maven的本地仓库后,gradle默认会按以下顺序去查找本地的仓库
Stella981 Stella981
2年前
Maven配置文件中 mirror和repository的区别及中央仓库配置大全
1、Maven配置文件中mirror和repository的区别1.1repositoryrepository就是个仓库,maven里有两种仓库,LocalRepository(本地仓库)和RemoteRepository(远程仓库)。!(https://oscimg.oschina.net/oscnet/up0
Stella981 Stella981
2年前
Maven详解之仓库
Maven详解之仓库本地仓库、远程仓库(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.cnblogs.com%2Fduanxz%2Fp%2F5210189.html)
Stella981 Stella981
2年前
Git 手册
gitinit                                                 初始化本地git仓库(创建新仓库)gitconfigglobaluser.name"xxx"                      配置用户名gitconfigglobaluser.emai
Stella981 Stella981
2年前
Github远程仓库提交代码步骤
1.克隆远程仓库1)当没有设置默认目录时gitclone仓库地址本地存放目录//没有目录的情况2)当设置了本地存放目录时先打开路径,命令:cdpath1.初始化git创建git仓库:gitinit查看文件目录: gitstatus
Stella981 Stella981
2年前
Git 使用方法
仓库的两种初始化方式1.方式新建包含文件的云端仓库,就叫做云端仓库被初始化了接着拉取到本地最后把修改后的'本地仓库'数据推送到云端2.方式新建'空云端'仓库,云端仓库没有文件数据接着初始化本地仓库然后推送到云端差别在新建云端仓库时是否勾选加入了模板文件例如README.md没有勾选任何文件的话
Stella981 Stella981
2年前
Docker搭建私有镜像仓库
docker仓库的工作原理和maven的类似,他们都提供了提供了一个中央仓库,允许用户科技直接从中央仓库下载,同时我们也可以搭建自己的本地私有仓库。docker本地私有镜像仓库的优点:1.从私有仓库中下载节省网络带宽;2.从私有仓库中下载速度快,一般都是局域网络内部署;3.托管不对外的内部镜像;下面我们将完整的说明使用docker
Stella981 Stella981
2年前
Maven的使用(依赖冲突)
1.1Maven坐标坐标:每一个jar包或maven项目在网络上都有一个独一无二的身份证坐标(GAV)1.groupId公司或组织域名的倒序(仓库:包名)2.artifactId项目名或模块名(仓库:项目名)3.version版本号(仓库:版本号)坐标和本地仓库有关系么?
Stella981 Stella981
2年前
Maven仓库介绍
何为仓库Maven中的仓库用来存放生成的构建和各种依赖。严格说来只有两种仓库:本地和远程。本地仓库指本机的一份拷贝,用来缓存远程下载、包含你尚未发布的临时构件。远程仓库指通过各种协议如file://和http://访问的其它类型的仓库。这些仓库可能是第三方搭建的真实的远程仓库,用来提供他们的构件下载(例如repo.mave