Maven 快照

概述

大型应用软件一般由多个模块组成,一般它是多个团队开发同一个应用程序的不同模块,这是比较常见的场景。例如,一个团队正在对应用程序的应用程序,用户界面项目(app-ui.jar:1.0) 的前端进行开发,他们使用的是数据服务工程 (data-service.jar:1.0)。

现在,它可能会有这样的情况发生,工作在数据服务团队开发人员快速地开发 bug 修复或增强功能,他们几乎每隔一天就要释放出库到远程仓库。

现在,如果数据服务团队上传新版本后,会出现下面的问题:

  • 数据服务团队应该发布更新时每次都告诉应用程序 UI 团队,他们已经发布更新了代码。
  • UI 团队需要经常更新自己 pom.xml 以获得更新应用程序的版本。

为了处理这类情况,引入快照的概念,并发挥作用。

什么是快照?

快照(SNAPSHOT)是一个特殊版本,指出目前开发拷贝。不同于常规版本,Maven 每生成一个远程存储库都会检查新的快照版本。

现在,数据服务团队将在每次发布代码后更新快照存储库为:data-service:1.0-SNAPSHOT 替换旧的 SNAPSHOT jar

快照与版本

在使用版本时,如果 Maven 下载所提到的版本为 data-service:1.0,那么它永远不会尝试在库中下载已经更新的版本 1.0。要下载更新的代码,data-service 的版本必须要升级到 1.1。

在使用快照(SNAPSHOT)时,Maven 会在每次应用程序 UI 团队建立自己的项目时自动获取最新的快照(data-service:1.0-SNAPSHOT)。

原文地址:https://www.cnblogs.com/bjio/p/11681947.html

时间: 2024-07-30 14:35:08

Maven 快照的相关文章

Java-Maven-Runoob:Maven 快照(SNAPSHOT)

ylbtech-Java-Maven-Runoob:Maven 快照(SNAPSHOT) 1.返回顶部 1. Maven 快照(SNAPSHOT) 一个大型的软件应用通常包含多个模块,并且通常的场景是多个团队开发同一应用的不同模块.举个例子,设想一个团队开发应用的前端,项目为 app-ui(app-ui.jar:1.0),而另一个团队开发应用的后台,使用的项目是 data-service(data-service.jar:1.0). 现在可能出现的情况是开发 data-service 的团队正在

maven快照版本和发布版本

在使用maven过程中,我们在开发阶段经常性的会有很多公共库处于不稳定状态,随时需要修改并发布,可能一天就要发布一次,遇到bug时,甚至一天要发布N次.我们知道,maven的依赖管理是基于版本管理的,对于发布状态的artifact,如果版本号相同,即使我们内部的镜像服务器上的组件比本地新,maven也不会主动下载的.如果我们在开发阶段都是基于正式发布版本来做依赖管理,那么遇到这个问题,就需要升级组件的版本号,可这样就明显不符合要求和实际情况了.但是,如果是基于快照版本,那么问题就自热而然的解决了

Maven快照机制(SNAPSHOT)

文章转自 http://www.cnblogs.com/EasonJim/p/6852840.html 以下引用自https://ayayui.gitbooks.io/tutorialspoint-maven/content/book/maven_snapshots.html: 一.场景 一个大型的软件应用通常包含多个模块,并且通常的场景是多个团队开发同一应用的不同模块.举个例子,设想一个团队开发应用的前端,项目为app-ui(app-ui.jar:1.0),而另一个团队开发应用的后台,使用的项

【Maven】Maven之使用maven快照版本机制进行多项目依赖开发

Maven的快照版本机制就是为了解决多项目依赖开发存在频繁更改maven依赖版本的问题.比如模块B依赖模块A,只需要将模块A的版本设定为0.0.1-SNAPSHOT,然后发布到私服中,在发布的过程中,Maven会自动为构件打上时间戳.比如0.0.1-20191214.221414-13就表示2019年12月14日22点14分14秒的第13次快照.有了该时间戳,Maven就能随时找到仓库中该构件0.0.1-SNAP-SHOT版本最新的文件.这时,模块B配置对于模块A的0.0.1-SNAPSHOT版

Maven创建并管理Web项目(上传Web项目的API的JAR到Nexus 私服上)

目录 1.简介 2.安装Eclipse Maven插件 3.用Eclipse创建Maven Web项目 4.配置settings.xml 文件并下载项目依赖的JAR,并上传Web项目的api的JAR到Nexus 私服 1.简介 Maven.Nexus 私服的安装和配置和Maven的优点在Maven和 Sonatype Nexus私服的安装.配置及使用入门已经有介绍了,这里就不在介绍了,今天我们要介绍Maven创建并管理Web项目,方便我们项目的开发和管理. 2.安装Eclipse Maven插件

maven教程全攻略

maven教程全攻略 我们在开发项目的过程中,会使用一些开源框架.第三方的工具等等,这些都是以jar包的方式被项目所引用,并且有些jar包还会依赖其他的jar包,我们同样需要添加到项目中,所有这些相关的jar包都会作为项目的依赖. 通常,一个java EE项目所依赖的jar包会有很多.然而,这还并非是主要问题,在管理这些jar包过程中,jar包的版本往往是最令人头疼的问题.选择一个jar包的版本,需要考虑它所依赖的jar包是否支持这个版本,并且还需要确认依赖它的jar包能不能对这个版本兼容. 所

2019java单体应用开发实战项目教程 bootstrap+mvc+spring+idea+maven技术整合

课程介绍:2019Java单体应用包含IDEA,Maven构建应用,三层架构 + MVC,Bootstrap,Spring等技术知识点├─软件├─第01天(14集)│ 005.第01章-使用 Intellij IDEA-第一个 IDEA 应用程序.mp4│ 006.小知识-使用 Markdown 记笔记.mp4│ 007.第02章-使用 Maven 构建应用-Maven 简介.mp4│ 008.第02章-使用 Maven 构建应用-Maven 安装配置.mp4│ 009.第02章-使用 Mave

JENKINS 打包 jar未更新版本

使用jenkins+maven+svn构建持续集成 maven快照库中程序已经更新.但是jenkins打包未更新jar至最新. 原因是:jenkins调用的maven的配置文件 maven默认情况下:更新本地仓库机制:每日更新一次.如需要更改实时检查.需要修改maven配置: settings中增加: <releases> <enabled>true</enabled> <updatePolicy>always</updatePolicy> &l

史上最全面的Elasticsearch使用指南

[TOC] Create by [email protected] 2018-7-1 官方文档:https://www.elastic.co/guide/cn/elasticsearch/guide/current/index.html 23个很有用的查询示例:https://www.coyee.com/article/10764-23-useful-elasticsearch-example-queries/ ES配置详解:https://www.cnblogs.com/hanyouchun/