当前位置: 首页 > 知识库问答 >
问题:

我可以使用Quartz Scheduler 1.8.6使用最新的Spring批处理吗?

奚晟
2023-03-14

我需要在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是最新的版本,它将在我的测试代码中调度和运行一个简单的任务。

    null

共有1个答案

章绪
2023-03-14

是否有文档列出Spring Batch和Quartz Scheduler的兼容版本?

您可以在您使用的Spring批处理版本的build.gradle文件中检查quartz的版本。对于Spring batch 4.1.0,可以使用quartz 2.3.0。

如果您使用Spring Boot,您可以检查start.Spring.io/actuator/info以获得有关Spring项目版本的信息,这些版本在通过Spring Boot导入时协同工作得最好。例如,如果您使用Spring Boot version 2.1.0使用start.Spring.io生成一个项目,并html" target="_blank">添加spring-boot-starter-batchspring-boot-starter-quartzstarters,那么您将在类路径中获得Spring Batch 4.1.0和Quartz 2.3.0。

以这种方式使用旧的spring-context-support是一种完全不正确的方法吗?

不是不正确(只要对你有效),但不推荐。

  • 如果确实使用Spring Boot,您将获得最新的spring-context版本(在上面给出的示例中为5.1.2)。
  • 如果不使用Spring Boot,您仍然可以导入Spring Boot提供的maven BOM,并让它为您导入版本。这比手动管理版本要好。

希望这能有所帮助。

 类似资料:
  • 我有一个创建大约10个Spring批处理作业的需求,它将由一个读取器和一个写入器组成。所有读取器都从不同的Oracle DB读取数据,并写入不同的Oracle DB(源服务器和目标服务器不同)。Spring作业是使用Spring Boot实现的。另外,所有10+个作业都将打包到一个Jar文件中。到目前为止还好。 另外,如果这是UI的唯一选择,我如何在Spring Data Flow Server中

  • 我有一个spring批处理应用程序,它从文件中读取数据,进行一些处理,最后编写一个定制的输出。这一切都是一步到位的。在下一步中,我将使用一个tasklet来归档输入文件(移动到另一个文件夹)。这个应用程序运行良好。但是,现在我需要在远程服务器上对sftp输出文件进行进一步处理。我找到了一种使用spring integration实现sftp的方法,在这里我创建了一个输入通道,该通道将反馈给outb

  • 问题内容: 我正在使用Spring批处理下载一个大文件来处理它。场景很简单: 无需保存输入文件数据。 我们可能同时运行多个(相同场景的)作业实例 我正在寻找最佳实践来处理这种情况。 我是否应该创建Tasklet以便在本地下载文件,而不是通过常规步骤开始处理它? 在这种情况下,我需要考虑一些临时文件问题(确保删除了该文件,确保不覆盖其他临时文件,等等。) 另一方面,我可以下载它并将其保留在内存中,但

  • 我已经看到了AmqpJobSample http://docs.spring.io/spring-batch/spring-batch-samples/#AMQPJobFunctionalTests 有没有使用消息传递(例如RabbiyMq)进行远程分块和分区的示例? 如何使用AmqpItemReader和AmqpItemWriter实现这一点?我需要使用请求/答复吗?我可以设置回复队列吗?做这件

  • 当我强制jedis在如下: spring项目显示了这样的错误: 我想使用jedis的扩展功能,似乎Spring启动数据与最新的jedis不兼容。有可能解决这个问题吗?

  • 顺便说一句:我的应用程序是一些REST控制器和一些批处理作业的组合。那么使用云数据流有意义吗?如果没有,那么是否有更好的控制台管理器用于批处理作业(如重新启动、取消作业门户)等?

  • 我是新的Spring批与引导。我在使用postgres配置jobRepositoryFactory bean作为数据库时遇到了一个问题。下面是我的配置类。 下面是Spring boot App run的输出 我已经在我的configuration类中配置了bean。我错过了什么?

  • 但它不止一次地使用消息。有没有人面对过这个问题。此外,使用上述配置,使用者总是在一个批处理中只接收到一个消息。我尝试增加和,但没有任何影响。 在对ConcurrentKafkaListenerContainerFactory进行如下更改后,批处理配置的问题得到了解决: factory.getContainerProperties().SetackMode(org.springFramework.k