如何在MS Build脚本中使用自定义变量?

Sof*_*ane 5 msbuild

在使用MSBuild.exe构建时,有没有办法在命令行中使用自定义变量,如下所示:

MSBuild.exe bootstrapper.msbuild <custom_variable1=custom_variable_value1>

custom_variable2=custom_variable_value2>...<custom_variablen=custom_variable_valuen>
Run Code Online (Sandbox Code Playgroud)

目的是知道我是否必须启动另一个可执行文件.

sti*_*ijn 13

您应该从基础开始,答案可以在这里的官方文档中找到.Msbuild调用这些properties而不是变量.

在实践中:

msbuild bootstrapper.msbuild /p:custom_variable1=custom_variable_value1
Run Code Online (Sandbox Code Playgroud)

在Msbuild文件中,您可以使用它:

<Target Name="MyTarget">
  <PropertyGroup>
    <custom_variable1 Condition="'$(custom_variable1) == ''">defaultValue</custom_variable1>
  </PropertyGroup>
  <Exec Condition="'$(custom_variable1)'=='someValue'" .../>
</Target>
Run Code Online (Sandbox Code Playgroud)

如果属性不存在或为空,则为属性分配默认值,如果值等于,则仅执行Exec任务 Exec