gpt4 book ai didi

java - 测试中使用 Quartz 时出现 NoSuchBeanDefinitionException

转载 作者:行者123 更新时间:2023-12-02 06:18:25 29 4
gpt4 key购买 nike

我有一个使用 Quartz 调度程序的 Spring Boot (2.1.3) 项目。它是通过启动器包含的:

dependencies {
...
implementation('org.springframework.boot:spring-boot-starter-quartz')
}

该应用程序(主要)配置有组件扫描。如果我运行该应用程序,一切都很好。如果我运行一个用 @SprinBootTest 注释的测试,一切也都很好。但是如果我使用这个自定义注释

@DataJpaTest
@ComponentScan(basePackages = ["com.mycompany"])
@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.NONE)
@ActiveProfiles("intTest")
@Target(AnnotationTarget.CLASS)
@Retention(AnnotationRetention.RUNTIME)
@Inherited
annotation class JpaTest

我得到的是 NoSuchBeanDefinitionException 而不是 @SpringBootTest,因为找不到 Quartz Scheduler

我尝试将 Quartz 包添加到组件扫描中,但这没有帮助:

@ComponentScan(basePackages = ["com.mycompany", "org.quartz"])

如何让 Spring 通过我的测试设置和自定义配置注释来选择调度程序?

最佳答案

我假设您的 SpringBoot 应用程序在某处声明了 @EnableScheduling 。尝试将其添加到您的@JpaTest

关于java - 测试中使用 Quartz 时出现 NoSuchBeanDefinitionException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55851414/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com