CI环境下应该如何使用ivy?

发布于 2024-09-10 21:05:06 字数 467 浏览 1 评论 0原文

我正在使用 ant 和 Apache Ivy,并且我在 CI 服务器中有多个计划构建相同的源代码,执行不同类型的测试。

Ivy 必须删除缓存中的 myorg-myproject-runtime.xml 文件并重新创建它,因为 CI 构建计划被执行了很多次。

最终,其中一个 CI 构建计划在生成文件时读取该文件,导致我的构建失败,并且此错误显示在日志中。

/build-dir/my-ivy.xml:47:不可能 常春藤检索: java.lang.RuntimeException:问题 在检索 [ myorg| 期间我的项目 ]: java.text.ParseException: 失败 解析报告: ../../repo/cache/myorg-myproject-runtime.xml: 文件提前结束。

有没有办法在 CI 环境中使用 ivy 来避免这种情况?

I am using ant and Apache Ivy, and i have multiple plans in my CI server building the same source code, executing different types of tests.

Ivy must be deleting myorg-myproject-runtime.xml file in my cache and recreating it because the CI build plans are being executed so many times.

Eventually one of the CI build plans reads the file while it has been generated and results in my builds failing and this error is shown in the logs..

/build-dir/my-ivy.xml:47: impossible
to ivy retrieve:
java.lang.RuntimeException: problem
during retrieve of [ myorg| myproject
]: java.text.ParseException: failed to
parse report:
../../repo/cache/myorg-myproject-runtime.xml:
Premature end of file.

Is there a way to avoid this, using ivy in a CI environment?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

你不是我要的菜∠ 2024-09-17 21:05:06

我想我找到了答案。

通过为每个构建计划使用单独的 ivy 缓存,ivy 不会覆盖它自己的 *-runtime.xml 文件。

对我有用。

I think i found my answer.

By using a separate ivy cache for each build plan, ivy does not overwrite it's own *-runtime.xml file.

Works for me.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文