2017-07-01 92 views
0

的MSBuild是报告一个奇怪的现象:的MSBuild VS Visual Studio的构建 - 建立目标

d:\测试>的MSBuild Test.sln微软(R)构建引擎版本 15.1.1012.6693版权所有(C)微软公司。版权所有。

一次构建一个解决方案中的项目。要启用 并行构建,请添加“/ m”开关。开始建立时间7/1/2017 5:33:14 PM。项目“D:\ Test \ Test.sln”节点1(默认目标)。 D:\ Test \ Test.sln.metaproj:错误MSB4126:指定的解决方案 配置“Debug | x64”无效。请使用配置和平台属性(例如 MSBuild.exe Solution.sln/p:Configuration = Debug/p:Platform =“Any CPU”)指定一个有效的解决方案 或将这些属性留空以使用默认解决方案 组态。 [D:\ Test \ Test.sln] Done Building Project “D:\ Test \ Test.sln”(默认目标) - FAILED。

所以,调试| X64的是无效...

的问题是:

d:\测试>找到 “X64” Test.sln

- -------- TEST.SLN

这不是现有的目标。

提到的文件(D:\ Test \ Test.sln.metaproj)也不存在(也检查隐藏文件)。

sln文件具有DEBUG | AnyCPU和RELEASE | AnyCPU作为目标。

Microsoft Visual Studio Solution File, Format Version 12.00 
# Visual Studio 15 
VisualStudioVersion = 15.0.26430.14 
MinimumVisualStudioVersion = 10.0.40219.1 
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Test", "Test\Test.csproj", "{63FA3D37-7672-4C5F-BAE2-43CCF8ABC7E4}" 
EndProject 
Global 
    GlobalSection(SolutionConfigurationPlatforms) = preSolution 
     Debug|Any CPU = Debug|Any CPU 
     Release|Any CPU = Release|Any CPU 
    EndGlobalSection 
    GlobalSection(ProjectConfigurationPlatforms) = postSolution 
     {63FA3D37-7672-4C5F-BAE2-43CCF8ABC7E4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU 
     {63FA3D37-7672-4C5F-BAE2-43CCF8ABC7E4}.Debug|Any CPU.Build.0 = Debug|Any CPU 
     {63FA3D37-7672-4C5F-BAE2-43CCF8ABC7E4}.Release|Any CPU.ActiveCfg = Release|Any CPU 
     {63FA3D37-7672-4C5F-BAE2-43CCF8ABC7E4}.Release|Any CPU.Build.0 = Release|Any CPU 
    EndGlobalSection 
    GlobalSection(SolutionProperties) = preSolution 
     HideSolutionNode = FALSE 
    EndGlobalSection 
EndGlobal 

那么为什么MSBuild感到困惑?

作为我个人而言,它看起来像,因为MS与.NET的核心行动去,整个构建系统已断开连接的设置一个巨大的混乱等

回答

0

事实证明,这是依赖于一个环境变量(就像我们没有足够的配置文件一样)。

当您运行cmd.exe时,如果选择x86或x64,它会设置一个环境变量。

还有的是说,一些不成文的规定:

  • 86值为anycpu ..或x86
  • X64的是64位,但不是AnyCPU ..
+0

感谢这里分享您的解决方案,您可以将其标记为答案,这样可以帮助其他社区成员获得相同的问题。 –

+0

我不得不在2天之前被允许去做;完成:) – Thomas

相关问题