0

是否可以在具有单一应用程序集的单一构建服务器上设置用 .NET 和 Java 编写的项目的连续构建?

我已经看到 CruiseControl 支持这两个世界,但据我所知,这是两个独立的应用程序。我是否应该使用单独的机器来构建 Java 项目(已经设置了用于 .NET 项目的机器)?

4

5 回答 5

3

Hudson支持 Ant(开箱即用的 IIRC)和NAnt(通过插件),因此这是您的选择。

于 2009-03-12T10:18:41.103 回答
2

CruiseControl 支持多种不同的构建选项,包括AntMavenNAntPhing (php)、RakeXCode,然后是通用的“ exec ”,您可以使用它来调用您想要的任何命令行脚本/工具。在同一台服务器上混合 Java 和 .NET 不是问题。

当然,这不是 CruiseControl 独有的。正如您在此功能矩阵中所见,有许多支持多种构建技术的 CI 工具。

免责声明:我在 CruiseControl 上工作。OTOH,因为我不赚钱,所以我不太在乎人们选择哪种工具。我更关心提升 CI 实践的状态,这就是我组织持续集成和测试会议 ( CITCON ) 的原因。

于 2009-03-12T19:38:03.073 回答
1

Ant并且NAnt可以相当容易地执行任意进程,包括彼此,所以实际的构建部分不应该太难。

我希望棘手的一点是将报告(包括单元测试结果)转换为适当的格式。你的 XSLT 怎么样?;)

编辑:现在我想起来了,我的第一个敏捷项目有一个连续构建服务器(我相信只是 CruiseControl),它一定是在做一些这样的事情......我怀疑当时我们直接调用 Visual Studio 来构建代码和 NUnit 来测试它。如果我在同一家公司,我会检查,但那是两份工作之前 :(

于 2009-03-12T10:08:22.937 回答
1

您可以查看Atlassian Bamboo。不幸的是,它不是免费的,除非您申请开源/社区许可证以与开源软件一起使用。

于 2009-03-12T12:17:23.893 回答
1

您可以在同一台机器上使用两种不同的产品。或者,您可以在多台机器上运行单个构建系统。这实际上取决于您对 CI 施加的负载。

于 2009-03-13T21:09:41.830 回答