我有两个步骤的工作。第一步是在具有以下结构的文件夹中创建一个文件
src/<timestamp>/file.zip
下一步需要检索这个文件并处理它
我想将时间戳添加到作业参数中。每个作业实例都由时间戳区分,但在第一步完成之前我不会知道时间戳。如果我在作业开始时将时间戳添加到作业参数中,那么每次都会启动一个新的作业实例。任何未完成的工作都将被忽略。
我有两个步骤的工作。第一步是在具有以下结构的文件夹中创建一个文件
src/<timestamp>/file.zip
下一步需要检索这个文件并处理它
我想将时间戳添加到作业参数中。每个作业实例都由时间戳区分,但在第一步完成之前我不会知道时间戳。如果我在作业开始时将时间戳添加到作业参数中,那么每次都会启动一个新的作业实例。任何未完成的工作都将被忽略。
我认为您可以改用 JobExecutionContext 。
第 1 步获取当前时间戳,使用它生成文件,并放入 JobExecutionContext。第 2 步从 JobExecutionContext 读取以获取时间戳,用于构造其处理的输入路径。
只是在您的拆分步骤方法上添加一些内容,如下所示:您必须三思而后行,这是否真的是您想要的。如果第 1 步完成,第 2 步失败,当作业实例重新运行时,它将从第 2 步开始,这意味着文件不会在第 1 步中重新生成(因为它已经完成)。如果它是你要找的,那很好。如果没有,您可能会查看是否要将 Step1 和 Step2 放在一个步骤中。