Visual studio MSBuild忽略所需的配置
我正在尝试从命令行构建Visual Studio 2019解决方案(虽然是PowerShell脚本),我需要有两个构建—一个用于64位,另一个用于32位 在Configuration Manager中,我向平台添加了x86和x64平台: 在项目属性中,我相应地设置了平台目标: 我正在使用以下命令行使用MSBuild生成:Visual studio MSBuild忽略所需的配置,visual-studio,msbuild,visual-studio-2019,Visual Studio,Msbuild,Visual Studio 2019,我正在尝试从命令行构建Visual Studio 2019解决方案(虽然是PowerShell脚本),我需要有两个构建—一个用于64位,另一个用于32位 在Configuration Manager中,我向平台添加了x86和x64平台: 在项目属性中,我相应地设置了平台目标: 我正在使用以下命令行使用MSBuild生成: & $msbuildPath ../MyApp.Desktop.sln -t:Rebuild -p:Configuration=Release /p:Platfor
& $msbuildPath ../MyApp.Desktop.sln -t:Rebuild -p:Configuration=Release /p:Platform=x86
但是它似乎忽略了/p:Platform
,因为不管我是声明x86
还是x64
,它总是在Configuration Manager中构建“活动”平台集。但是,如果我在平台中输入一个无效值(例如x123),构建将失败,因为该值不存在
如何使MSBuild使用所述的
/p:Platform
实际生成?如果生成sln文件,则应更改解决方案平台而不是项目平台
请尝试以下步骤:
1)首先,删除每个项目平台,并对项目进行清理。只保留平台任何CPU
2)为解决方案平台添加新的x64
和x86
平台
3)关闭VS实例,删除每个项目的bin
和obj
文件夹
然后使用/p:Platform=x64或x86运行powershell。而且在我这边效果很好。它可以返回x86
或x64
输出文件,而不会出现任何问题
& $msbuildPath ../MyApp.Desktop.sln -t:Rebuild -p:Configuration=Release /p:Platform=x64