我已经使用maven多年了,但我刚刚意识到需要了解下载依赖项时的实际时间(maven阶段)。我读过maven文档,但找不到下载依赖项的实际阶段。
下面是对我的用例的简化解释:
我有一个Jenkins构建作业,它有两个阶段(因为我的代码依赖于其他内部项目的快照,所以我使用-U更新快照,因为我想用其他项目的最新快照构建代码):
1.快速检查(检查是否所有代码都已编译)
mvn test-compile -U3.缓慢检查(生成和单元测试整个代码)
mvn verify -U scoverage:report-only现在,在执行步骤1时,如果有人更新依赖项的快照,我将在不同的快照上运行测试、编译和验证目标。
我想避免这种情况,我想知道如果我从步骤2中删除了-U,那么在运行步骤1时,所有的依赖项都会被更新吗?或者,是否存在这样的情况:步骤1只下载与其相关的依赖项以运行测试编译阶段,而验证阶段则需要一组超级依赖项?
发布于 2020-07-10 10:20:17
目标依赖性:解决默认绑定到生命周期阶段生成源,这是验证和初始化后的第三阶段。那么它们都是本地可用的。
同意,在第二步删除-U可能是正确的事情,只要行动在相同的波姆。
这也假设本地回购是特定于作业的(私有)。默认情况下,maven.local回购在${user.home}/.m2中对用户是常见的。同一节点上的多个执行者将共享默认回购。
发布于 2020-07-10 09:00:56
将-U从第二步中删除是保存的。
依赖关系在每个构建的开始时都得到了解决。
https://stackoverflow.com/questions/62829965
复制相似问题