当前位置: 首页 > article >正文

Maven <repository> 配置小知识

Maven 配置小知识

demo1

<repositories>
    <repository>
        <id>alimaven</id>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    </repository>
</repositories>

demo2

<repositories>
    <repository>
        <id>alimaven</id>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
        <releases>
            <enabled>true</enabled>
            <updatePolicy>always</updatePolicy>
            <checksumPolicy>fail</checksumPolicy>
        </releases>
    </repository>
    <repository>
        <id>alimaven</id>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
        <snapshots>
            <enabled>true</enabled>
            <updatePolicy>always</updatePolicy>
            <checksumPolicy>fail</checksumPolicy>
        </snapshots>
    </repository>
</repositories>

1. snapshots

在 Maven 中,你可以使用 <snapshots> 标签来控制你的项目在使用快照版本(Snapshot)时的行为。快照版本通常是在项目开发时使用的版本,它们会随着代码的不断更新而更新。 例如,一个项目使用的是版本为 1.0-SNAPSHOT 的快照版本,当项目开发完成后,可能会将其发布为 1.0 版本的稳定版本(Release)。

<snapshots> 标签中包含三个元素:

  • <enabled>:用于启用或禁用快照版本。当它为 true 时,Maven 才会去搜索该仓库下的快照版本,默认为 false
  • <updatePolicy>:用于控制 Maven 在检查快照版本时,多久检查一次。有多种设定可以选择,例如 alwaysdailyinterval:xx。默认值为 daily
  • <checksumPolicy>:用于控制 Maven 是否检查快照版本的 MD5 校验和和 SHA-1 校验和。通常,当我们从远程仓库中下载文件时,程序会自动通过 MD5SHA 校验和来校验文件的完整性,如果文件不完整就会抛出错误。而该元素则是用来决定是否在下载快照版本时检查校验和,通常应该设为 fail

在 Maven POM 文件中,<snapshots> 标签可以添加到构建文件(build)、配置文件(profile)或仓库文件(repositories)中,以控制 Maven 在使用快照版本时的行为。

2. releases

在 Maven 中,相对于快照版本(Snapshot),构建项目时还需要考虑到稳定版本(Release)。稳定版本是一个相对成熟、功能稳定的版本,通常都是已经经过充分测试并且被认为足够稳定的版本,可以用于部署和发布。在发布稳定版本时,使用发布版本(Release)的方式可以保证项目的稳定性和可靠性。

<releases> 标签用于对 Maven 项目中的构件发布版本的行为进行控制。与 <snapshots> 类似,<releases> 标签也含有三个元素:

  • <enabled>:用于启用或禁用项目的发布版本。当它为 true 时,Maven 才会去搜索该仓库下的发布版本,默认为 true
  • <updatePolicy>:用于控制 Maven 在检查发布版本时,多久检查一次。有多种设定可以选择,例如 alwaysdailyinterval:xx等。默认值为 daily
  • <checksumPolicy>:用于控制 Maven 是否检查发布版本的 MD5 校验和和 SHA-1 校验和。该元素的取值可以为 failignorewarn

在 Maven POM 文件中,<releases> 标签可以添加到仓库文件(repositories)中,以控制 Maven 在使用和发布 artifact 时的行为。


http://www.kler.cn/a/4304.html

相关文章:

  • 【JavaScript】基础内容,HTML如何引用JavaScript, JS 常用的数据类型
  • C++ 的 CTAD 与推断指示(Deduction Guides)
  • TensorFlow深度学习实战(5)——神经网络性能优化技术详解
  • nginx 实现 正向代理、反向代理 、SSL(证书配置)、负载均衡 、虚拟域名 ,使用其他中间件监控
  • rsarsa-给定pqe求私钥对密文解密
  • VB.NET 正则表达式完全指南
  • Visual Genome数据集简介
  • SpringBoot 将PDF转成图片或Word
  • 08基于拉丁超立方法的风光场景生成与削减
  • Linux常用文件系统简述
  • 分享7个你可能还不知道的JS Web API,构建现代化网站轻松搞定
  • k8s证书过期的解决方案
  • 作业帮基于明道云开展的硬件业务数字化建设
  • 基于springboot实现医院信息管理系统【源码+论文】
  • Promise API
  • 036:cesium加载GPX文件,显示图形
  • MAL-PEG-FITC荧光素-聚乙二醇-马来酰亚胺的结构式
  • 【CSDN线上竞赛40】小结
  • 业务数据采集模块
  • SSM之SpringBoot day01
  • Python引用包路径查询
  • [leetcode] 动态规划
  • SpringBoot 如何将配置文件挂到 jar 包外面?
  • 内核编译(准备工作)
  • 27-队列练习-LeetCode232用栈实现队列
  • 阿里云服务器普通安全组和企业级安全组区别对比