2010-05-25 42 views
2

我正在寻找一个可以很好地支持并行任务/目标(或任何你称之为)的构建系统(在ms窗口上工作)。更具体地说 - 在构建过程中(这是在MS Windows机器上启动的),我需要将源文件复制到许多不同的机器上(它们不一定运行Windows),并在它们中的每一个上启动远程作业 - 而且我非常喜欢一次在所有机器上执行此操作。有谁知道能够并行执行这样的任务的构建系统。您是否知道任何支持并行化的构建系统?

从我一派,目前可用的选项有:
在化妆-j开关 - 但我不知道,如果NMAKE支持此
- 一些自定义楠任务
-msbuild有某种形式的支持并行化 - 似乎很类似(也就是说,你没有指定要并行执行的操作,只是指定以这种方式构建东西会很不错)
-fake(f#make)是用已知的函数式编程语言编写的有很好的并行化支持 - 但我在功能性编程领域并不熟练。
-TeamCity对这些东西有很大的支持,但是这对于'重型工具'有点儿(也太贵了)

我可以探索的任何其他解决方案?

回答

1

CruiseControl.NET支持并行构建,但是您需要了解的是并行构建仅适用于正在构建的项目不依赖共享资源(如文件和其他项目)的情况。构建过程通常会锁定其他并行构建可能试图删除的文件。这可能会导致您的构建由于“非代码”原因而失败。

0

我希望你可以用SCons做你想做的事情,但是如果你不了解Python,那么你可能不值得投入你的努力。如果你这样做,那是另一回事。

1

FastBuild声称是一个高度优化的系统,用于在Windows和其他平台上分布多个机器上的构建。尽管如此,我还没有尝试过。

相关问题