【Maven】Maven之远程仓库的配置

摘要:
在许多情况下,默认的中心仓库无法满足项目的需要。项目所需的组件可能存在于另一个远程仓库中,例如CompanyMaven仓库。此时,您可以使用项目POM或maven设置在xml中配置仓库<存储库>&书信电报;存储库>&书信电报;id>公司</id>&书信电报;名称>公司存储库&lt

   在很多情况下,默认的中央仓库无法满足项目的需求,可能项目需要的构件存在于另外一个远程仓库中,如Company Maven仓库。这时,可以在项目POM中或maven的settings.xml中配置该仓库
<repositories>
    <repository>
        <id>company</id>
        <name>Company Repository</name>
        <url>http://repository.company.com/maven2/</url>
        <releases>
            <enabled>true</enabled>
        </releases>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
        <layout>default</layout>
    </repository>
</repositories>

  在repositories元素下,可以使用repository子元素声明一个或者多个远程仓库。该例中声明了一个id为company,名称为Company Repository的仓库。任何一个仓库声明的id必须是唯一的,尤其需要注意的是,Maven自带的中央仓库使用的id为central,如果其他的仓库声明也使用该id,就会覆盖中央仓库的配置。该配置中的url值指向了仓库的地址,一般来说,该地址都基于http协议,Maven用户都可以在浏览器中打开仓库地址浏览构件。
    该例配置中的releases和snapshots元素比较重要,它们用来控制Maven对于发布版构件和快照版构件的下载。
    这里需要注意的是enabled子元素,该例中releases的enabled值为true,表示开启Company仓库的发布版本下载支持,而snapshots的enabled值为false,表示关闭Company仓库的快照版本的下载支持。因此,根据该配置,Maven只会从Company仓库下载发布版的构件,而不会下载快照版的构件。该例中的layout元素值default表示仓库的布局是Maven 2及Maven 3的默认布局,而不是Maven 1的布局。
  对于releases和snapshots来说,除了enabled,它们还包含另外两个子元素updatePolicy和checksumPolicy: 
<snapshots>
    <enabled>true</enabled>
    <updatePolicy>daily</updatePolicy>
    <checksumPolicy>ignore</checksumPolicy>
</snapshots>

  元素updatePolicy用来配置Maven从远程仓库检查更新的频率,默认的值是daily,表示Maven每天检查一次。其他可用的值包括:never——从不检查更新;always——每次构建都检查更新;in-terval:X——每隔X分钟检查一次更新(X为任意整数)。
    元素checksumPolicy用来配置Maven检查检验和文件的策略。当构件被部署到Maven仓库中时,会同时部署对应的校验和文件。在下载构件的时候,Maven会验证校验和文件,如果校验和验证失败,怎么办?当checksumPolicy的值为默认的warn时,Maven会在执行构建时输出警告信息,其他可用的值包括:fail——Maven遇到校验和错误就让构建失败;ignore——使Maven完全忽略校验和错误。 
 

免责声明:文章转载自《【Maven】Maven之远程仓库的配置》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇图文例解C++类的多重继承与虚拟继承JQ版本对比下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

验证MD5校验和

2.1.3.1验证MD5校验和 下载完MySQL软件包后,应确保其MD5校验和与MySQL下载页面上提供的校验和匹配。每个程序包都有一个单独的校验和,您可以针对下载的程序包进行校验。每个MySQL产品的下载页面上都列出了正确的MD5校验和,您会将其与下载的文件(产品)的MD5校验和进行比较。 每个操作系统和设置都提供了自己的工具版本,用于检查MD5校验和。...

使用maven命令安装jar包到本地仓库

第三方jar包在开发工具中引入后编译没问题, 启动调试包括打包时会提示找不到jar包的错误.需要上传到maven仓库中,并在pom文件内引入. maven命令: 安装指定文件到本地仓库命令:mvn install:install-file -DgroupId=<groupId> : 设置上传到仓库的包名 -DartifactId...

RedHat7 Git 安装使用

Git 是一个很强大的分布式版本控制系统。它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势。 搭建git环境 第一步: 安装Git # yum -y install git 第二步: 在https://github.com/上创建GitHub帐号  第三步: 生成ssh key # ssh-keygen -t rsa -C "you...

gitLab创建自己的私有库

一.创建私有库的流程简介 创建一个项目,留着后面的流程3制作私有库 在可以创建私有库的地方创建一个code repository, code repository是代码仓库,我们把代码上传到这个仓库。 在可以创建私有库的地方创建一个spec repository, spec repository是配置仓库,所有的配置按照包名、版本号分门别类的存放在这个仓...

svn的应用

SVN 如何来进行多人协作开发? 在实际工作中,通常是一个小组或者一个团队一起开发同一个项目,不同的人开发不同的功能模块,有一个公共的地方存放项目代码。 如果多个人同时对同一个文件做了修改,比如按照分工,两个人分别做文章模块的增删改查功能,需要操作同一个文件article控制器,如果大家同时完成工作并提交代码,会出现一个代码覆盖的问题。 解决办法: ①合理...

Ubuntu SVN 搭建

SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。 svn服务器有2种运行方式:独立服务器和借助apache运行。两种方式各有利弊,用户...