首页 > Java > 究竟什么是Maven快照,为什么我们需要它?

究竟什么是Maven快照,为什么我们需要它?

上一篇 下一篇

我对Maven快照的含义以及我们为什么要构建一个有点困惑?

分割线

网友回答:

其他三个答案为您提供了版本是什么的良好愿景。我只是想添加一些有关 Maven 找到依赖项时的行为的信息。-SNAPSHOTSNAPSHOT

构建应用程序时,Maven 将在本地存储库中搜索依赖项。如果在那里找不到稳定版本,它将搜索远程存储库(在 或 中定义)以检索此依赖项。然后,它会将其复制到本地存储库中,以使其可用于下一个构建。settings.xmlpom.xml

例如,一个库被认为是一个稳定版本,如果 Maven 在本地存储库中找到它,它将在当前构建中使用这个库。foo-1.0.jar

现在,如果您需要一个库,Maven 会知道此版本不稳定并且可能会发生变化。这就是为什么Maven会尝试在远程存储库中查找较新版本的原因,即使在本地存储库中找到了此库的版本。但是,此检查每天仅进行一次。这意味着,如果您的本地仓库中有一个(即此库已在 2011/05/06 11:00:00 生成),并且如果您在同一天再次运行 Maven 构建,Maven 将不会检查仓库是否有更新的版本。foo-1.0-SNAPSHOT.jarfoo-1.0-20110506.110000-1.jar

Maven 为您提供了一种在存储库定义中更改此更新策略的方法:

<repository>
    <id>foo-repository</id>
    <url>...</url>
    <snapshots>
        <enabled>true</enabled>
        <updatePolicy>XXX</updatePolicy>
    </snapshots>
</repository>

哪里可以:XXX

  • 始终:Maven 将在每次构建时检查更新的版本;
  • 每日,默认值;
  • 间隔:XXX:以分钟为单位的间隔 (XXX
  • 永远不会:Maven永远不会尝试检索另一个版本。仅当本地不存在时,它才会执行此操作。通过配置,版本将作为稳定库处理。SNAPSHOT

(设置模型.xml可以在这里找到)

分割线

网友回答:

Maven 中的快照版本是尚未发布的版本。

这个想法是,发布(或任何其他版本)完成之前,存在一个 .那个版本可能会变成.它基本上是“正在开发中”。这可能接近真实版本,或者相当远(例如,在发布之后)。1.01.0-SNAPSHOT1.01.01.00.9

“真实”版本和快照版本之间的区别在于快照可能会获得更新。这意味着今天下载可能会提供与昨天或明天下载不同的文件。1.0-SNAPSHOT

通常,快照依赖项应仅在开发期间存在,并且任何已发布版本(即没有非快照)都不应依赖于快照版本。

分割线

网友回答:

“快照”术语意味着构建是给定时间代码的快照。

这通常意味着这个版本仍在大量开发中。

当代码准备就绪并且需要发布它时,您将需要更改 POM 中列出的版本。然后,您可以使用“1.0”之类的标签,而不是“快照”。

有关版本控制的一些帮助,请查看语义版本控制规范。

模板简介:该模板名称为【究竟什么是Maven快照,为什么我们需要它?】,大小是暂无信息,文档格式为.编程语言,推荐使用Sublime/Dreamweaver/HBuilder打开,作品中的图片,文字等数据均可修改,图片请在作品中选中图片替换即可,文字修改直接点击文字修改即可,您也可以新增或修改作品中的内容,该模板来自用户分享,如有侵权行为请联系网站客服处理。欢迎来懒人模板【Java】栏目查找您需要的精美模板。

相关搜索
  • 下载密码 lanrenmb
  • 下载次数 233次
  • 使用软件 Sublime/Dreamweaver/HBuilder
  • 文件格式 编程语言
  • 文件大小 暂无信息
  • 上传时间 03-06
  • 作者 网友投稿
  • 肖像权 人物画像及字体仅供参考
栏目分类 更多 >
热门推荐 更多 >
微信模板 微信素材 响应式 微信公众平台 单页式简历模板 微信图片 微信文章 html5 企业网站 自适应
您可能会喜欢的其他模板