我有三个Visual Studio解决方案.第一个配置为构建为Release,另外两个设置为构建为Debug.
当运行一个简单的MSBuild脚本显式声明要构建的配置(Debug)时,第一个项目仍然构建为Release.
示例脚本:
我已经尝试了以上的变体,如下所示,但我总是得到相同的结果.
Configuration=Debug Configuration=Debug Configuration=Debug
我注意到有一个类似的问题,MSBuild任务 - 构建失败,因为一个解决方案是在发布而不是调试中构建的,但这是特定于TFS和Teambuild.我正在谈论纯MSBuild与从头开始创建的简单项目文件.
我该如何解决这个问题?
关于平台任何cpu的拼写问题,事实证明存在一个问题,已经在StackOverflow和Microsoft的其他地方报道了.它一般影响MSBuild,Platform
我的dotnet v3.5 MSBuild/help中省略了整个文档问题.所以也许这会帮助别人!
TFS 2010中的"AnyCPU"与"任何CPU"
MSBuild解决方案和项目之间"任何CPU"的不一致平台
Closed as Won't Fix Type: Bug ID: 503935 Opened: 10/26/2009 1:29:12 PM Access Restriction: Public 0 Workaround(s) 5 User(s) can reproduce this bug
MSBuild Platform
属性具有不同的值,Any CPU
具体取决于您是构建解决方案还是构建项目.
- 用于解决方案 - 使用Platform="Any CPU"
- 带空间
- 用于项目 - 使用Platform="AnyCPU"
- 无空间
好的,我发现了这个问题.与MSBuild无关,而是与构建的解决方案相关.张贴以拯救别人的心痛.
无论出于何种原因,在解决方案中配置了Debug配置,如下所示:
alt text http://www.freeimagehosting.net/uploads/cad0bdf1c0.jpg
所以MSBuild只是按照它所说的去做......
我得到了同样的错误.解决方案是明确指定目标平台:
msbuild.exe /p:Platform="Any CPU"
这只是在我升级到Windows 7后才开始发生,所以我想这与它有关.