理解 Maven 2 依赖项管理模型

[size=x-large][b]理解 Maven 2 依赖项管理模型[/b][/size]
在有效利用 Maven 2 之前,您需要理解 Maven 2 依赖项管理模型是如何运行的。

依赖项开发适应于这样的项目,其软件组件(称作模块 )是由不同的项目团队开发的。它支持持续独立开发,也支持对所有依赖模块进行精炼。

这个团队协作场景在通过 Internet 建立和维护的开源项目中十分常见,由于内部开发大受开源或外包世界的冲击和影响,这种场景在合作开发的圈子里日益盛行。
[size=large][b]
解析项目依赖项[/b]
[/size]
Maven 2 依赖项管理引擎帮助解析构建过程中的项目依赖项。实践中,依赖项在 pom.xml 文件内的 <dependencies> 元素中指定,并作为 POM 的一部分注入到 Maven 中。

项目依赖项存储在存储库服务器(在 Maven 术语中简单地称之为存储库 )上。要成功的解析依赖项,需要从包含该工件的存储库里找到所需的依赖性工件。

基于 POM 中的项目依赖项信息,该依赖项解析器试图以下列方式解析依赖项:

1. 检查本地存储库中的依赖项。
2. 检查远程存储库列表中的依赖项。
3. 如果前两步失败,则报告一个错误。

默认情况下,第二步中所涉及的第一个远程存储库是一个能在全球访问的集中式 Maven 2 存储库,它包含了最流行的开源项目的一些工件。在内部开发中,可以设置额外的远程存储库来包含从内部开发模块中发布的工件。可以使用 settings.xml 中的 <repositories> 元素来配置这些额外的远程存储库。
[b]
Maven 本地存储库和远程存储库[/b]

Maven 2 本地存储库是磁盘上的一个目录,通常位于 HomeDirectory/.m2/repository。这个库扮演着高性能本地缓存的角色,存储着在依赖项解析过程中下载的工件。远程存储库要通过网络访问。可以在 settings.xml 配置文件中维护一个远程存储库列表以备使用。
[b]
通过 settings.xml 配置 Maven[/b]

可以在一个 settings.xml 文件中指定影响 Maven 操作的配置属性。默认的设置文件是 MavenInstallationDirectory/conf/settings.xml。Maven 2 用户可通过维护 UserHomeDirectory/.m2/settings.xml 来覆盖一些配置属性。参见 Maven 设置参考,获取更多有关可配置设置的信息。
[b][size=large]
确保单个的工件[/size][/b]

将 Maven 2 用于项目构建时,依赖项解析通过一个集中的存储库确保只存在一个依赖性工件,而不考虑有多少项目或子项目引用该工件。这是多模块项目构建中一个重要的属性,因为包含多个工件会导致一些项目一致性和集成方面的问题。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值