我在Spring Batch中有没有参数启动的作业。此作业不可重新启动,因此我们使用-next参数和JobParametersIncrementer来允许每次执行这些作业作为新的执行。 -next参数需要加载所有执行上下文,以使用增量器(CommandLineJobRunner行492)获得新的唯一JobParameters。 问题在于,有时,新版本可以更改存储在执行上下文中的对象,而上一个执行上下文可能会因新版本而无法序列化。
有没有一种好的方法或更好的做法来启动没有参数的作业,并允许更改执行上下文中存储的对象? 我们是否必须在每个发行版中清除存储库历史记录以避免任何故障,还是有更好的解决方案?