我正在尝试创建一个Spring批处理项目。我正在创建该项目。
然而,在购买了Intelllij idea终极版后,我的项目开始给出错误。我再次下载了“社区”版本,我的项目正在工作:)
那么问题是什么呢?
如果我想用intelllij idea 2022.2版运行我的spring批处理项目,我不能访问任何spring批处理对象,如JobBuilderFactory、StepBuilderFactory、ItemWriter、ItemReader等。
但是如果我用免费版本“社区”运行同一个项目,就没有错误,项目也能正常工作。
我忍不住要发疯了:)
Could not autowire. No beans of 'JobBuilderFactory' type found
2条答案
按热度按时间taor4pac1#
我认为这是因为IntelliJ Idea无法检测到
EnableBatchProcessing
正在导入这些bean并将它们添加到应用程序上下文中。此错误只是IDE的提示。如果您使用最终版本运行项目,它应该也能正常工作。社区版和终极版WRT在如何报告此类错误方面应该有所区别,但如果您的应用与CE一起运行,则它也应该与UE一起运行。
mf98qq942#
在CE版本中工作的项目在Ultimate版本中不工作。然而,问题如下所述得到解决。
我在Sping Boot Application类中添加了@EnableBatchProcessing注解,我认为它包含在上下文中。
注意:通常在批处理应用程序中,@EnableBatchProcessing注解包含在配置类中。
当我把它直接包含在主类中时,问题就解决了,这是一个奇怪的错误。