【问题标题】:Conditional OutDir in Solution between MSBuild and VisualStudioMSBuild 和 VisualStudio 之间的解决方案中的条件 OutDir
【发布时间】:2016-05-26 14:57:30
【问题描述】:
当我在 Visual Studio 中构建时,我希望输出路径是通常的相对路径(bin/Debug、bin/Release)。另一方面,当我使用 msbuild 时,我希望输出路径不同,但使用 $(SolutionDir)Build\xxx 之类的宏。
如何在解决方案文件中定义条件输出路径,根据它是 MSBuild 命令行构建还是 Visual Studio IDE 构建这一事实有条件地选择?
【问题讨论】:
标签:
visual-studio
msbuild
【解决方案1】:
根据the docs,在 Visual Studio 中构建时,属性 $(BuildingInsideVisualStudio) 设置为 true。因此,使用该属性作为条件重新定义 OutDir 属性应该可以解决问题:
<PopertyGroup>
<OutDir Condition="'$(BuildingInsideVisualStudio)'=='True'"/>$(SolutionDir)Build\xxx</OutDir>
</PopertyGroup>