2

我正在将我们现有的自定义连续构建系统转换为使用 TeamCity。这似乎适用于我们的大多数构建场景,但只有一个。

我们有一个硬件项目,它被设置为使用配置了一组特定工具链的 Eclipse 进行构建。开发人员运行 IDE,由于缺少 Eclipse 构建运行器,TeamCity 使用 python 脚本从命令行运行器构建项目。

TeamCity 构建过程如下:

  • 删除 Eclipse 工作区的内容。
  • 将所有 Eclipse 项目导入工作区。
  • 构建工作区。

这种方法的问题如下:

  • Eclipse 没有构建运行器。脚本可以工作,但在开发和维护脚本方面存在开销。这正是我们试图摆脱的。
  • 没有 TeamCity 解析输出(gcc 和 eclipse)。我必须将 eclipse 输出重定向到文件,当 Eclipse 进程完成时,解析文件中的错误、警告、进度状态等,以便将适当的 TeamCity 服务消息注入到 stdout。同样,这种开销正是我们试图摆脱的。

鉴于距离发布只有几天的时间没有 Eclipse 构建运行器,是否有更好的机制来使用 TeamCity 加载和构建 Eclipse 工作区?

给定命令行运行脚本解决方案,是否有更好的机制来捕获和显示错误、警告等?

4

1 回答 1

1

在发布周期的这个特定时间,这可能不是最适合您的方法,因为您离发布截止日期如此之近,但我会使用 Maven 进行构建,并使用 M2E 插件在 Eclipse 中提供 Maven 集成。

虽然使用 Maven 作为构建工具通常不会过于复杂,但将现有项目转换为使用它有时并非易事。

我建议您通过启用 Maven 作为您的构建工具来开始您的下一个发布周期 - TeamCity 完全支持 Maven 构建运行程序。

于 2012-10-15T16:47:40.537 回答