Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MSBuild脚本dependsOnTargets执行顺序_Msbuild - Fatal编程技术网

MSBuild脚本dependsOnTargets执行顺序

MSBuild脚本dependsOnTargets执行顺序,msbuild,Msbuild,我的构建脚本中有这一行 <Target Name="Deploy" DependsOnTargets="ServicesInstall;SitesTransfer" > 我想知道的是,在这个例子中,目标执行的顺序是什么。此外,如果ServiceInstall具有依赖项,它们会在SiteTransfer之前或之后执行。换句话说,执行是深度优先还是广度优先 谢谢 Sachin作为一个实验,我尝试了以下方法: <Target Name="Deploy" DependsOnTar

我的构建脚本中有这一行

<Target Name="Deploy" DependsOnTargets="ServicesInstall;SitesTransfer" >

我想知道的是,在这个例子中,目标执行的顺序是什么。此外,如果ServiceInstall具有依赖项,它们会在SiteTransfer之前或之后执行。换句话说,执行是深度优先还是广度优先

谢谢


Sachin

作为一个实验,我尝试了以下方法:

<Target Name="Deploy" DependsOnTargets="ServicesInstall;SitesTransfer" />
<Target Name="ServicesInstall" DependsOnTargets="ServicesInstallDependency">
   <Message Text="ServicesInstall" />
</Target>
<Target Name="ServicesInstallDependency">
   <Message Text="ServicesInstallDependency" />
</Target>
<Target Name="SitesTransfer">
   <Message Text="SitesTransfer" />
</Target>
然而,我怀疑确切的序列尚未定义。它没有记录在上


换句话说,msbuild只保证满足指定的约束。如果需要保证
SitesTransfer
及其依赖项在
ServicesInstall
之前执行,则应使
ServicesInstall
依赖于
SitesTransfer

From:“MSBuild引擎按照依赖项在DependsOnTargets属性中出现的顺序从左到右执行依赖项。”您还可以在“目标构建顺序”标题下的中看到有用的执行顺序。
...
1>ServicesInstallDependency:
1>  ServicesInstallDependency
1>ServicesInstall:
1>  ServicesInstall
1>SitesTransfer:
1>  SitesTransfer
...