Java Spring boot 2.0.6 quartz缺少组织/springframework/scheduling/quartz/SpringBeanJobFactory在战争中
在tomcat中启动应用程序期间使用spring boot war构建Java Spring boot 2.0.6 quartz缺少组织/springframework/scheduling/quartz/SpringBeanJobFactory在战争中,java,spring-boot,war,quartz,Java,Spring Boot,War,Quartz,在tomcat中启动应用程序期间使用spring boot war构建 Caused by: java.io.FileNotFoundException: class path resource [org/springframework/scheduling/quartz/SpringBeanJobFactory.class] cannot be opened because it does not exist at org.springframework.core.io.ClassPathRe
Caused by: java.io.FileNotFoundException: class path resource [org/springframework/scheduling/quartz/SpringBeanJobFactory.class] cannot be opened because it does not exist
at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:180)
即使它作为依赖项存在
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-quartz</artifactId>
</dependency>
org.springframework.boot
我不确定,这只是建议:
尝试添加依赖项:
<!--Quartz-->
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.2.1</version>
</dependency>
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz-jobs</artifactId>
<version>2.2.1</version>
</dependency>
org.quartz-scheduler
石英
2.2.1
org.quartz-scheduler
石英工作
2.2.1
注意:这只是“热修复”的一种方式。而且这不是一个完整的解决方案。解决了这个问题。当我使用IntelliJ理念运行Tomcat时,项目中引入的新依赖项没有得到反映。需要删除并重新导入war/war分解为Tomcat配置-没有问题。尝试添加以下依赖项(如果需要,可以自行设置Spring版本):
org.springframework
spring上下文支持
${spring.version}
SpringBeanJobFactory
可在spring上下文支持
依赖项中找到。您使用的是哪个版本?+-org.springframework.boot:spring启动程序quartz:jar:2.0.6.RELEASE:compile[INFO]|+-org.springframework:spring上下文支持:jar:5.0.10.RELEASE:compile类在其中。Spring引导jar文件运行时没有问题。只有当我将其构建为war并部署到单独的tomcat上时,问题才会出现。然而,依赖性是存在的。没有线索。我已经为jar和war定义了这些依赖项。仅版本2.3.0而不是2.2.1
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${spring.version}</version>
</dependency>