Jenkins禁用或清除maven版本的缓存

Pet*_*ete 7 dependencies caching maven jenkins

我们的maven项目都建立在jenkins之上,然后将工件部署到maven存储库.

但是出于某种原因,在构建一个与刚刚构建的其他项目有依赖关系的项目时,似乎存在某种缓存或更新延迟.

假设工件A和B中存在一个错误取决于A.现在我在本地修复错误,在B中更新我的依赖关系,运行B,一切都很好.我明显检查了.现在我在Jenkins上建立A,之后是B.然后我得到新建的B并运行它.这个bug仍然存在.几个小时后,如果我再次建立B,它将会得到新的A并且错误消失了......

所以必须有办法迫使詹金斯在其服务器上使用新的A. 使用mvn -umvn --update-snapshots不会帮助.它将检查更新并找不到..

Adr*_*hum 7

我相信在Maven/Jenkins中不存在这样的缓存行为,因为所有快照都是在Jenkins的同一个实例中本地构建的.不需要"更新快照"选项,因为您没有从远程仓库获取它.但是,我建议您查看Jenkins中的存储库设置.在Jenkins中,我们可以更改要使用的maven存储库(默认情况下,它由整个机器共享,但可以更改为每个工作区或每个执行程序等.(在您的项目配置中Build -> Advanced,您可以检查" Use private Maven repository",然后Manage Jenkins -> Configure System -> Maven Project Configuration,您可以选择管理方式Local Maven Repository.我怀疑您已将其更改为"本地执行者"

如果您有任何设置导致A的构建安装在B使用的其他存储库中,则可能遇到您遇到的问题.