0

我正在为 Cruise 控制构建脚本,在我的 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>

当我强制构建时,我收到此错误:

errorMSB4126:指定的解决方案配置“Release|Any CPU”无效。请使用配置和平台属性(例如 MSBuild.exe Solution.sln /p:Configuration=Debug /p:Platform="Any 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>

我能看到的唯一变化是发布版本使用的是“发布”配置而不是“调试”当我将它更改为它工作的调试配置时,问题是我无法使用调试版本。任何想法为什么这个小改动会阻止构建工作?

4

1 回答 1

2

您的解决方案中是否设置了“Release|Any CPU”配置?如果是,是否为该配置选择了任何项目来构建?

如果消除 Platform 参数,您将获得 Release 配置的默认 Platform。也许这会让你继续前进。

于 2013-05-15T23:44:56.387 回答