FinalBuilder允许在构建期间进行高级流程控制

FinalBuilder的流程控制(Flow Control)动作提供了许多您在一个成熟的编程语言中所期望的控制结构。您可以使用Try/Catch/Finally动作来处理异常;使用If/Then和Switch/Case动作来有条件地执行子动作;使用For和While循环来迭代动作和动作组(Action Groups)以形成一个干净的构建项目。组合使用这些动作,您可以创建一个其动态性满足您的构建过程需要的FinalBuilder项目。

Try、Catch和Finally

Try/Catch/Finally操作可以用来构成对异常的处理。如果一个Try块的子动作失败,则将执行Catch块下的动作。这允许您处理在try块期间发生的错误。

这些动作还需要一个End动作来完成块,并且它们都需要位于树中的相同节点级别,以形成有效的块。您还可以嵌套Try/Catch/Finally块,它们可以用于Try/Catch/Finally/End或Try/Catch/End或Try/Finally/End结构中。

Switch、Case和Else

Switch、Case和Else动作提供了一个使用简单的不区分大小写的字符串比较的选择器结构。

Case动作必须是Switch动作的子动作,Else动作也是如此。注意Else也可以和If..Then动作一起使用。

当与If..Then动作一起使用时,Else动作必须是If..Then动作的下一个同级别动作。另一个有条件动作是“If Previous Action Failed”(如果前一个动作失败)动作。顾名思义,此动作仅在它的前一个同级别动作启用了Ignore Failure(忽略失败)时(否则项目将停止),才会执行。

Async Action Group

您还能使用Aysnc Action Group对您的构建项目的组成部分进行多线程操作。 同时运行构建过程中的多个动作或者并行运行全体构建过程,以提高构建的速度。 右边的图像显示了同时执行3个DOS命令的Aysnc Action Group的一个非常简单的实施。