我正在使用带有MSBuild任务的Visual Studio在线构建。我目前有以下MSBuild参数提供给我的任务:
/p:Configuration=Release;AppxBundle=Always;AppxBundlePlatforms="x86|x64|ARM";AppxPackageDir="$(Build.BinariesDirectory)\AppxPackages\\";UapAppxPackageBuildMode=StoreUpload
这会在x86
,x64
和ARM
中创建我的应用。它在x86
中创建了库的发行版,但在x64
和ARM
中创建了我的库的调试版本。
当我的.appxupload
软件包创建时,它无法通过Windows认证测试,因为我的库是在调试中构建的。
如何为所有3种配置制作MSBuild构建版本。我的猜测是因为我没有提供/platform
配置。如何为3个平台提供此配置?
我已尝试platform="x86|x64|ARM"
,但它返回了错误
答案 0 :(得分:1)
对于标准项目文件,无法在单个命令中执行此操作。使用多个命令为所需的每个平台/配置组合构建项目,或使用“master”构建文件为您执行相同的操作,例如:
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="FullRebuild">
<Target>
<ItemGroup>
<Configurations Include="Debug;Release"/>
<Platforms Include="x86;x64;ARM"/>
<ConfigAndPlatform Include="@(Configurations)">
<Platform>%(Platforms.Identity)</Platform>
</ConfigAndPlatform>
</ItemGroup>
<MSBuild Projects="myproject.sln" Targets="Build"
Properties="Configuration=%(ConfigAndPlatform.Identity);Platform=%(ConfigAndPlatform.Platform)"/>
</Target>
</Project>