我有两个调度程序,一个是注释驱动的,另一个是用“任务”定义的普通弹簧调度程序
但在将下面的代码添加到我的项目上下文后,我得到了例外:
java.lang.IllegalStateException:多个TaskScheduler和/或 ScheduledExecutorService存在于上下文中。删除除一个以外的所有 豆子;或者实现SchedulingConfigurer接口并调用 ScheduledTaskRegistrar #setScheduler明确在 configureTasks()回调。找到以下bean:[myappScheduler, 的TaskScheduler]
<file:inbound-channel-adapter id="scanIn" directory="file:${uploadfilepath}" auto-startup="true" prevent-duplicates="true" filename-regex="^.*\.(csv|xml)$" >
<int:poller id="poller" fixed-delay="60000" />
</file:inbound-channel-adapter>
<int:service-activator input-channel="scanIn" output-channel="scanOut" ref="scanHandler" />
<file:outbound-channel-adapter id="scanOut" directory="file:${inputfiles.archive.path}" delete-source-files="true"/>
<bean id="scanHandler" class="com.rs.ibgt.pf.intg.VirusScanHandler" />
请提出任何解决方案..
答案 0 :(得分:0)
Spring Integration添加了自己的(taskScheduler
)bean。您需要显示其余的配置 - 看起来您正在尝试自动连接调度程序;如果是这样,您需要添加@Qualifier
或为其命名以匹配您实际尝试注入的bean(例如myappScheduler
)。