我正在使用Hudson和Ant + ivy以及许多并行启动的工作。我的问题是我为Ivy使用了一个缓存文件夹,它在每个作业的ant任务中被删除和更新。
当然,有些构建失败是因为它们无法删除ivy文件夹而其他一些构建失败,因为无法同时找到要删除的库。
建立失败
C:\ dev.hudson \作业\ API \工作空间\构建\ build.xml中:100: 无法删除目录 C:\ dev的\工具\建立\蚂蚁\扩展\常春藤\缓存\ MyApp的
和
建立失败
C:\ dev.hudson \作业\ API \工作空间\构建\ build.xml中:104: 无法解决依赖关系:解决失败 - 请参阅输出 细节
答案 0 :(得分:0)
如果你真的需要每次都清除你的缓存Anders的答案是要走的路。
我更希望为所有外部库(或者不会改变那么多的库)以及一直被清除的基于项目的缓存保留缓存。
对于很少更改的缓存,锁定策略对于处理多线程访问非常有用。
lock strategy应该有帮助。如果您只使用常春藤命令来处理缓存,这将确保只有一个进程“处于活动状态”。
您可以在ivysettings.xml
中一般启用它。
<lock-strategies><artifact-lock/></lock-strategies>