2011-10-25 114 views
1

我有一個MSBuild構建文件在我的本地開發箱上正確運行,但在CI構建框上失敗。MSB4064:「MSBuild」任務不支持「BuildInParallel」參數

失敗的構建目標如下:

<Target Name="Clean"> 
    <MSBuild Projects="Solution.sln" Targets="Clean" BuildInParallel="True"/> 
</Target> 

而且在構建框中的錯誤是這樣的:

"E:\TRUNK\build\Bamboo.build" (Build target) (1) -> 
25-Oct-2011 10:22:51 (Clean target) -> 
25-Oct-2011 10:22:51  E:\TRUNK\build\build.build(19,55): error MSB4064: The "BuildInParallel" parameter is not supported by the "MSBuild" task. Verify the parameter exists on the task, and it is a settable public instance property. 
25-Oct-2011 10:22:51  E:\TRUNK\build\build.build(19,5): error MSB4063: The "MSBuild" task could not be initialized with its input parameters. 

這兩款機器報告有MSBuild的版本4.0.30319.1

Microsoft (R) Build Engine Version 4.0.30319.1 
[Microsoft .NET Framework, Version 4.0.30319.237] 
Copyright (C) Microsoft Corporation 2007. All rights reserved. 

4.0.30319.1 

我的本地盒子是Windows 7 x64,安裝了.Net Framework 4和Windows SDK 7.1,並且擁有ha s 8核心。

CI框是Windows Server 2008 x64,並且還安裝了.Net Framework 4和Windows SDK 7.1,並且有8個內核。

任何想法可能會導致這個問題的區別?

回答

6

檢查您的MSBuild項目根標籤中的ToolsVersion。值應該是「3.5」或「4.0」,因爲BuildInParallel在v3.5中受支持。

<Project ToolsVersion="3.5" .../>