maven - 部署失败时在 Nexus 上提交人工制品哈希
问题描述
假设我们有一个具有以下结构的 maven 项目:
projectAlfa (e.g. Snapshot)
- componentA
- componentB
- componentC
在人工制品的部署阶段(例如,在将 ComponentC 上传到 Nexus 时)的中间,Jenkins 作业由于网络问题而失败。
问题:
- 前两个组件(A 和 B)会被上传到 nexus 吗?
- 如果我请求 projectAlfa 的提交哈希,我会得到什么?projectAlfa 的组件是否会具有不同的状态/提交哈希(例如,组件 A 和 B 的工件具有不同的状态/提交哈希然后 C)?
目标是获取快照工件的 git commit 哈希。我需要这些信息,因为它可以帮助我定义,基于哪个 git commit-hash 是在 nexus 上构建的上传快照工件。
解决方案
好吧,我开始明白了。
如果您构建项目,并且 A 和 B 被部署,但 C 没有,那么 A 和 B 的最新 SNAPSHOT 将属于与 C 不同的提交哈希。
maven 部署插件有一个实验性的“deployAtEnd”参数来避免这种情况。
推荐阅读
- python - 是否可以在 Python 中将列表添加到打印语句?
- python - 在 matplotlib 中设置时间序列的 xlim
- .net-core - 未找到名为“Bearer”的 AuthorizationPolicy
- java - 从另一个类中实例化的 CustomView 中检索 id
- c# - 如何使用 DBpedia + dotnetRDF 提取维基百科列表数据?
- javascript - 为什么我的 masonry.js 项目相互重叠?
- python - 通过 mpl_finance 在 OHLC 分钟图上绘制一条线
- python - Pyspark groupby 列,同时有条件地计算另一列
- matlab - 带有求和的绘图函数会产生错误的结果
- python - Python扫雷递归算法超出递归限制