Maven仓库可分为两大类:
一、本地仓库
默认情况下,每个用户的用户目录下都有一个路径名为.m2/repository/的仓库目录。如果想要自己定义本地仓库的目录地址,可以编辑文件~/.m2/settings.xml,设置localRepoitory元素的值为想要的仓库地址。如:
<settings>
...
<localRepository>D:\custom\repository\</localRepository>
...
</settings>
此时,该用户的本地仓库地址为:D:\custom\repository\
二、远程仓库
Maven安装好后,就已经配置好了一个默认的远程仓库(即中央仓库)。
用户可以在POM中配置多个远程仓库。如:
<project>
...
<repositorys>
<repository>
<id>jboss</id>
<name>JBoss Repository</name>
<url>http://repository.jboss.com/maven2/</url>
<releases>
<enabled>true</enabld> 表示开启JBoss仓库的发布版本下载支持
<updatePolicy>daily</updatePolicy>更新频率。daily—每天检查更新(默认值);never—从不检查更新;always—每次构建都检查更新;interval:X(整数)—每隔X分钟检查更新一次。
<checksumPolicy>ignore</checksumPolicy>用来配置Maven检查检验和文件的策略。当遇到校验和验证失败时:warn—(默认值)会在执行构建时输出警告信息;fail—让构建失败;ignore—完全忽略校验的错误。
</releases>
<snapshots>
<enabled>true</enabld> 表示关闭JBoss仓库的快照版本的下载支持
<updatePolicy>daily</updatePolicy>
<checksumPolicy>ignore</checksumPolicy>
</snapshots>
<layout>default</layout> default表示仓库布局是Maven2及Maven3的默认布局
</repository>
</repositorys>
...
</project>
还有一种特殊的远程仓库——私服
它是架设在局域网内的仓库服务,私服代理广域网上的远程仓库,供局域网内的Maven用户使用。
远程仓库的认证
出于安全考虑,防止非法访问某些远程仓库,管理员会为每个仓库提供一组用户名和密码。这时,要能访问这些仓库的内容,就需要配置认证信息。仓库信息是配置在POM文件中,但认证信息必须配置在settings.xml文件中,通过ID元素将它们联系在一起。
<setting>
...
<servers>
<server>
<id>远程仓库配置ID相对应</id>
<username>name</username>
<password>password</password>
</server>
</servers>
...
</setting>
公共Maven仓库搜索服务软件:
Sonatype Nexus 地址:http://repository.sonatype.org/
jarvana 地址:http://www.jarvana.com/jarvana/
MVNbrowser 地址:http://www.mvnbrowser.com/
MVNrepository 地址:http://mvnrepository.com/