我正在测试命令行构建覆盖,并注意到VisualStudioSetting
属性似乎不起作用。我故意设置了一个坏值,它正常构建:
msbuild MyTestSolution.sln /p:platform="Win32" /p:configuration="Release" /p:VisualStudioVersion="19.2"
我本以为会收到一个错误,告诉我此版本的Visual Studio不可用,我是不是做错了什么?
Msbuild在生成时将忽略错误的属性。你可以为它创建一个错误任务:
<Target Name="ValidateCommandLine">
<Error
Text=" The version of visual studio should be 16.9 or later."
Condition="'$(VisualStudioVersion)' <= '16.9.0'" />
</Target>