我要求在最新版本的Spring Batch中使用Quartz Scheduler v1.8.6。有些旧批处理作业使用Quartz Scheduler v1.8.6,但当前不使用Spring Batch。
我能够使用Quartz Scheduler v1.8.6和最新的Spring Batch v4.1.0来安排和运行一个简单的Spring Batch作业,但是必须在pom.xml中添加一个依赖项才能使用旧版本的spring-context -support v3.2.18.RELEASE。 spring-context-support提供了通往Quartz和v3.2.18的桥梁。RELEASE是最新版本,可以在我的测试代码中安排并运行简单的工作。
答案 0 :(得分:0)
在某处是否有文档列出了Spring Batch和Quartz Scheduler的兼容版本?
您可以在使用的Spring Batch版本的build.gradle
文件中检查石英的版本。对于Spring Batch 4.1.0,您可以使用石英2.3.0。
如果您使用Spring Boot,则可以检查start.spring.io/actuator/info以获得有关通过Spring Boot导入时最能协同工作的spring项目版本的信息。例如,如果您使用Spring Boot版本2.1.0使用start.spring.io生成一个项目,并添加spring-boot-starter-batch
和spring-boot-starter-quartz
入门程序,则将在其中获得Spring Batch 4.1.0和Quartz 2.3.0。您的课程路径。
以这种方式使用旧的spring-context-support是一种完全不正确的方法吗?
不是不正确(只要对您有效),但不推荐。
spring-context
版本(在以上示例中为5.1.2)。 我应该使用旧版的Spring Batch吗?我希望不必这样做,因为最新的Spring Batch似乎具有大量的强大功能。
我不建议这样做。您可以坚持使用v4.1.0,因为它能够按照您所说的那样工作。 Spring v4.x需要Java 8,因此只要您使用的石英版本在Java 8上运行,它就能安排Spring Batch作业。
希望这会有所帮助。