你能在项目列表上进行并行增量构建吗?

时间:2010-09-22 15:53:22

标签: msbuild parallel-processing

是否可以获取项目列表并且只有在它们不是最新的时才并行构建它们?

<Target Name="DependenciesLevel7" DependsOnTargets="DependenciesLevel6">
<Message Text="5 items to build" />
<MSBuild Projects="C:\Projects\ApplicationManager.csproj;C:\Projects\Metrics.csproj" Properties="$(CustomAllProperties)" BuildInParallel="true">
  <Output TaskParameter="TargetOutputs" ItemName="built_DependenciesLevel7" />
</MSBuild>

这是我正在构建的格式的示例,我希望能够并行构建仅在此处不是最新的项目?也许内部的msbuild任务调用是自动并行的?如果是这样,我将如何设置它以使其基于先前的构建任务增量? (Target DependenciesLevel6)我相信增量构建你必须在目标中使用输入/输出。

问题摘要:

  • 是否自动递增传递给msbuild任务的项目列表(如果构建已经是最新的,则跳过构建)?
    • 如果没有,是否可以在并行化时对项目列表进行增量处理?
  • 您可以在每个目标是并行构建的目标增量之间进行吗?

3 个答案:

答案 0 :(得分:9)

答案 1 :(得分:-1)

您可能正在寻找 IncrediBuild

答案 2 :(得分:-1)

我不确定增量部分,但我读到它检查输入/输出。

我使用类似于你的配置使用MsBuild进行并行构建,不要忘记使用/ m选项运行msbuild。

您可以尝试一个简单的项目并检查日志以查看它是否为增量。