MSBuild错误MSB4126

MSBuild错误MSB4126,msbuild,cruisecontrol.net,msbuild-task,Msbuild,Cruisecontrol.net,Msbuild Task,我正在为巡航控制构建脚本,在我的ccnet.config文件中定义了以下msbuild任务: <msbuild> <executable>C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe</executable> <workingDirectory>D:\ccnet\WorkingDirectories\Image Finder\Released\&l

我正在为巡航控制构建脚本,在我的ccnet.config文件中定义了以下msbuild任务:

<msbuild>
        <executable>C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe</executable>
        <workingDirectory>D:\ccnet\WorkingDirectories\Image Finder\Released\</workingDirectory>
        <projectFile>ImageFinder.sln</projectFile>
        <buildArgs>/p:DoEvents=false /p:Configuration="Release" /p:Platform="Any CPU" /verbosity:detailed</buildArgs>
        <targets>Rebuild</targets>
        <timeout>900</timeout>
</msbuild>

C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe
D:\ccnet\WorkingDirectory\Image Finder\Released\
ImageFinder.sln
/p:DoEvents=false/p:Configuration=“Release”/p:Platform=“任意CPU”/verbosity:detailed
重建
900
强制生成时,我收到以下错误:

errorMSB4126:指定的解决方案配置“释放|任何CPU” 这是无效的。请使用以下命令指定有效的解决方案配置: 配置和平台属性(例如MSBuild.exe Solution.sln /p:Configuration=Debug/p:Platform=“任意CPU”)或保留这些 属性为空以使用默认解决方案配置

我的印象是,定义了msbuild脚本后,一切都会正常工作。我在别处为其他项目定义了类似的块,它们构建得很好。有人知道我为什么会收到上述错误吗

更新:

这是我们正在开发的活动版本的源代码管理脚本,它构建得很好

 <msbuild>
        <executable>C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe</executable>
        <workingDirectory>D:\ccnet\WorkingDirectories\Image Finder\Active\</workingDirectory>
        <projectFile>ImageFinder.sln</projectFile>
        <buildArgs>/p:DoEvents=false /p:Configuration="Debug" /p:Platform="Any Cpu" /verbosity:detailed</buildArgs>
        <targets>Rebuild</targets>
        <timeout>900</timeout>
      </msbuild>

C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe
D:\ccnet\WorkingDirectory\Image Finder\Active\
ImageFinder.sln
/p:DoEvents=false/p:Configuration=“Debug”/p:Platform=“Any Cpu”/verbosity:detailed
重建
900
我能看到的唯一变化是发布版本使用的是“release”配置,而不是“debug” 当我将其更改为调试配置时,问题是我无法使用调试版本。你知道为什么这个小改动会阻止构建工作吗?

你的解决方案中是否设置了“Release | Any CPU”配置?如果是,是否为该配置选择了要生成的任何项目


如果删除Platform参数,您将获得版本配置的默认平台。也许这会让你走起来。

谢谢戴维,你完全正确。问题是解决方案有一个Release32配置,但没有发布。