每个人。 我正在使用Spring Batch。 我的工作由3个步骤组成:Step1,Step2,Step3。 通过这3个步骤,我配置了这种循环:
+--> Step1 --> Step2 --> Step3 --+
| |
+--------------------------------+
我想执行此循环3次。
在第一个迭代结束时,Spring Batch具有每个步骤的执行实例:每个步骤执行实例的状态均为BatchStatus.COMPLETED,退出状态为ExitStatus.COMPLETED。
在第二次迭代中,Step1成功完成; Step2失败。
现在,如果我尝试重新运行作业,Spring Batch将不会执行步骤1:已完成;因此它执行步骤2。 Step2成功完成,现在出现了问题:Spring Batch无法执行Step3:在db中有一个Step3的步骤执行实例是COMPLETED(在第一次迭代后创建的);同时,它确实注意到出于类似原因执行步骤1。因此它会无限循环地执行Step2!
我该怎么办?我想在执行作业的第二次尝试中,在Step2之后执行Step3,然后再执行Step1,依此类推。
先谢谢了。