标签:style blog http color 使用 os 文件 re
Maven仓库的知识点比较少,理解起来也很简单。
仓库只有两类:本地仓库和远程仓库。所谓本地仓库就是自己机器上的仓库,在setting.xml文件中进行配置:
1 <localRepository>E:/MavenStore</localRepository>
本地仓库中存储的就是在使用Maven解析项目时从远程仓库下载的依赖和自己安装的一些构建。
远程仓库很明显就是网络上的仓库,存储在一个神秘的地方(好吧,其实我是不知道在哪里)。当Maven解析项目时,如果本地没有需要的依赖,就会自动去中央仓库下载,再找不到就报错。
所以远程仓库可以这么细分一下:
-- 中央仓库 (Maven世界的核心,提供了绝大多数的依赖支持。Oracle的JDBC这种有版权的除外)
-- 私服 (私服就是一个搭建在本地或者局域网内的中央仓库,用于代理外部仓库,可以更快更方便的获取依赖,同时也能减轻中央仓库的压力,中央仓库只有一个,且用且珍惜)
-- 公共仓库 (用于对中央仓库查漏补缺,比如JBOSS的公共库这些)
所以获取依赖的顺序是:本地仓库——私服——中央仓库
上面说到,如果中央仓库没有需要的依赖,那么我们会去公共库获取,那么我们怎么和公共库勾搭上呢?毫无疑问,在项目构建过程中,我们能玩儿的最高级的东西就是pom文件了,执行以下配置:
1 <repositories> 2 <repository> 3 <id>jboss</id> 4 <name>JBoss Repository</name> 5 <url>http://repository.jboss.com/maven2/</url> 6 <releases> 7 <!-- 表示支持下载发布版本的依赖 --> 8 <enabled>true</enabled> 9 <!-- 设置检查更新的频率(never:从不 always:每次构建时检查 daily:每天 interval:n 每n分钟检查一次) --> 10 <updatePolicy>daily</updatePolicy> 11 <!-- 检查校验和验证出错时的策略(warm:警告 fail:报错 ignore:忽略) --> 12 <checksumPolicy>ignore</checksumPolicy> 13 </releases> 14 <snapshots> 15 <!-- 表示不支持快照版本的依赖下载 --> 16 <enabled>false</enabled> 17 </snapshots> 18 <!-- 使用默认布局(布局简单理解就是按什么规则来构造依赖存储的物理路径) --> 19 <layout>default</layout> 20 </repository> 21 </repositories>
另外,类似JBoss这种远程仓库是可以随便访问的,但是如果在局域网内的私服上,一般来讲,不是什么人都可以进入的,所以这时候私服上的仓库会设置访问拦截,只有拥有认证信息的才能进行访问,这时就需要配置认证信息,这个配置在setting.xml中进行:
1 <servers> 2 <server> 3 <!-- id和仓库的id对应 --> 4 <id>test-repository</id> 5 <username>passport</username> 6 <password>123456</password> 7 </server> 8 </servers>
特别注意,server的id一定要和要访问的仓库的id一致,这是一对一关联。
再来看看关于Maven的版本相关知识。在刚开始学习的时候我也很郁闷,版本号嘛,随便写咯,还搞什么正式版、快照版。随着学习才发现,这一机制很好很强大,真是萌萌哒。快照版本机制的强大就在于,我们把A设置为SNAPSHOT后,每次更新A时,Maven会自动在文件后面加上时间戳,而A被其他项目获取时,Maven会将最新一次的改动开发下载,这样就保证了依赖A的项目随时拿到的都是能用的、而且是最新版本的A。等开发完成后,再把A的版本换成正式版,就一切OK了。
Maven里还有一个东西叫镜像,镜像类似于一个拷贝。比如亚马逊中国就是亚马逊在中国的一个镜像,因为两者提供的功能基本是一样的,而在天朝由于方教授的原因,访问亚马逊中国明显会更加方便。所以镜像就是这么一个东西。
最后是福利,可能初学Maven大家和我有一样的疑问,尼玛这么多以来,我特么怎么记得他们的坐标啊,卧槽。所以,仓库搜索服务就诞生了。
-- http://repository.sonatype.org/ 在这里直接输入依赖项目的名称,就能给你他的坐标,复制粘贴就OK了。
-- http://www.jarvana.com/jarvana 作用同上,功能都差不多
Maven学习笔记(二):Maven仓库,布布扣,bubuko.com
标签:style blog http color 使用 os 文件 re
原文地址:http://www.cnblogs.com/jasongan/p/3865288.html