VSTS 生成失败,因为它尝试为 AnyCPU 生成 UWP 项目



我正在尝试在VSTS(Visual Studio Team Services)上构建一个UWP项目。生成时,会出现以下错误消息,并且生成失败。

The project "Dummy.Win" is not selected for building in solution configuration "Release|Any CPU".

该解决方案由 3 个项目组成。

  • Dummy.Win是基于 10586 的 UWP 项目
  • Dummy.Core 哪个是 PCL
  • Dummy.Test这是一个测试项目

Dummy.Win参考资料Dummy.Core .

以下命令行显示了如何调用msbuild(添加了一些换行符):

"C:Program Files (x86)MSBuild14.0binmsbuild.exe" 
  "C:a1sDummy.sln" /nologo /m /nr:false 
  /fl /flp:"logfile=C:a1sDummy.sln.log" 
  /dl:CentralLogger,"C:LRMMSServicesMmsTaskAgentProvisionerToolsagents1.99.0AgentWorkerMicrosoft.TeamFoundation.DistributedTask.MSBuild.Logger.dll"*ForwardingLogger,"C:LRMMSServicesMmsTaskAgentProvisionerToolsagents1.99.0AgentWorkerMicrosoft.TeamFoundation.DistributedTask.MSBuild.Logger.dll"
  /p:AppxBundlePlatforms="x86|x64|ARM" 
  /p:AppxPackageDir="C:a1bAppxPackages\" 
  /p:AppxBundle=Always 
  /p:configuration="Release" 
  /p:VisualStudioVersion="14.0"

问题是:msbuild为什么要尝试为 AnyCPU 构建 UWP 项目?在本地运行此命令不会显示此错误(仍然不会创建 .appxupload 文件,但这是另一个问题)

打开 .带有文本编辑器的 SLN 解决方案文件,并找到解决方案配置平台部分,如下所示。删除具有"任何CPU"的行

GlobalSection(SolutionConfigurationPlatforms) = preSolution
        Debug|Any CPU = Debug|Any CPU
        Debug|ARM = Debug|ARM
        Debug|x64 = Debug|x64
        Debug|x86 = Debug|x86
        Release|Any CPU = Release|Any CPU
        Release|ARM = Release|ARM
        Release|x64 = Release|x64
        Release|x86 = Release|x86
这可能是

由解决方案中其他项目的生成平台引起的。例如,"Dummy.Test"项目。如果是常规测试项目而不是通用 Windows 测试项目。那么默认情况下,它的构建平台将是"任何CPU"。具有"发布"配置和"任何 CPU"平台的生成设置将添加到您的解决方案中。

右键单击VS中的解决方案并选择"配置管理器...",为"活动解决方案配置:"选择"发布",为"活动解决方案平台:"选择"任何CPU",然后检查是否选中了"Dummy.Win"项目的"构建"选项。如果没有,请检查该选项并签入更改,然后再次尝试构建。

最新更新