繁体   English   中英

Spring 引导测试上下文未加载:Flyway 和 Spring 引导数据/休眠

[英]Spring Boot test context not loading: Flyway and Spring Boot Data/Hibernate

在运行默认 Spring 引导单元测试时:

@SpringBootTest
class DemoH2FlywayApplicationTests {
    @Test
    void contextLoads() {
    }
}

我收到此错误:

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'flyway' defined in class path resource 

我正在运行 Spring Boot 2.6.2,使用 Flyway 和 H2,以及这些依赖项:

spring-boot-starter-data-jdbc
spring-boot-starter-data-jpa
spring-boot-starter-web
flyway-core
spring-boot-devtools
h2
lombok
spring-boot-starter-test

这是演示项目: https://github.com/filip194/demo-h2-flyway/

我不确定,也不是专家,但也许与我无法理解的 Hibernate 有一些相关性。 我尝试使用 application.properties 为 H2 创建测试资源文件夹,与主要资源中的相同,但没有任何变化。

有人可以帮忙吗?

您的问题的答案在此处进行了更详细的解释。

application.properties 文件中的以下行中存在错误。

spring.flyway.baseline-on-migrate=true
spring.flyway.validate-on-migrate: false

在第二行你应该写 = 而不是:

我在 Intellij IDEA 2019.3.3 (Java 14) 和 Maven 终端中启动了您的项目。 测试成功完成并创建了上下文。

尝试使用 Maven 终端运行您的项目: mvn clean istall 如果 maven 丢失,请将其安装在您的操作系统中。

如果一切顺利,那么问题很可能出在 Intellij IDEA

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM