如果我使用我的解决方案文件或项目文件作为输入从命令行执行msbuild而不设置配置和平台msbuild如何确定解决方案或单个项目文件中的每个项目使用哪个配置和平台?
在解决方案文件的情况下 - msbuild和xbuild都尝试查找Debug
配置和Mixed platforms
平台,但如果不存在,那么它将回退到它可以SolutionConfigurationPlatforms
在.sln
文件中找到的第一个.请记住,这只是解决方案级别的配置/平台,它使用的映射ProjectConfigurationPlatforms
中.sln
的文件来确定配置/平台上使用的项目.
对于项目文件,*proj
文件通常具有默认值Configuration
并Platform
指定.但即使这个缺失,那么Microsoft.Common.*targets
文件也会选择Debug|AnyCPU
默认值.
更新:csproj中的默认规范可能如下所示:
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
...
Run Code Online (Sandbox Code Playgroud)
它基本上是说"如果$(配置)未指定,则将其设置为Debug",类似于Platform.
归档时间: |
|
查看次数: |
1429 次 |
最近记录: |