Maven--远程仓库的配置

在很多情况下,默认的中央仓库无法满足项目的需求,可能项目需求的构件存在于另外一个远程仓库中,如 JBoss Maven 仓库。这时,可以在 POM 中配置该仓库:

 1 <project>
 2     ...
 3     <repositories>
 4         <repository>
 5         <id>jboss</id>
 6         <name>JObss Repository</name>
 7         <url>http://repository.jboss.com/maven2/</url>
 8         <releases>
 9            <enabled>true</enabled>
10         </releases>
11         <snapshots>
12           <enabled>false</enabled>
13         </snapshots>
14         <layout>default</layout>
15      </repository>
16     </repositories>
17     ...
18 </project>

在  <repositories> 元素下,可以使用  <repository> 子元素声明一个或者多个远程仓库。

任何一个仓库的声明必须是唯一的。

需要注意的是,Maven 自带的中央仓库使用的 id 为 central,如果其他的仓库声明也使用该 id,就会覆盖中央仓库的配置。

 <releases> 和  <snapshots> 用来控制 Maven 对于发布版构件和快照版构件的下载。这两个元素还包括另外两个子元素:

1 <snapshots>
2     <enabled>false</enabled>
3     <updatePolicy>daily</updatePolicy>
4     <checksumPolicy>ignore</checksumPolicy>
5 </snapshots>

 <updatePolicy> 用来配置 Maven 从远程仓库检查更新的频率,默认的值是 daily,表示 Maven 每天检查一次。其他可用的值包括:never--从不检查更新;always--每次构建都检查更新;interval:X--每隔 X 分钟检查一次更新(X 为任意整数)。

 <checksumPolicy> 用来配置 Maven 检查校验和文件的策略。当构件被部署到 Maven 仓库中时,会同时部署对应的校验和文件。在下载构件的时候,Maven 会验证校验和文件,如果校验和验证失败,当值为 warn 时,Maven 会在执行构件时输出警告信息,其他可用的值包括:fail--Maven 遇到校验和错误就让构件失败;ignore--使 Maven 完全忽略校验和错误。

 <layout> 表示仓库的布局。这里的值指仓库的布局是 Maven2 及 Maven3 的默认布局,而不是 Maven1 的布局。

 

posted @ 2017-07-25 14:22  MicroCat  阅读(207)  评论(0编辑  收藏  举报