Spring-boot liquibase集成

Mar*_*ijk 5 spring liquibase spring-boot

虽然我提出了问题https://github.com/spring-projects/spring-boot/issues/662来提供spring-boot-starter-liquibase-starter模块,但今天我发现已经存在某种集成.

Spring Boot已经包含https://github.com/spring-projects/spring-boot/tree/master/spring-boot/src/main/java/org/springframework/boot/liquibase以及Spring Boot Liquibase特定服务定位器.从这段代码和Spring Boot参考指南中我无法弄清楚Spring Boot已经提供了什么.

但是我也发现当添加Gradle依赖"org.liquibase:liquibase-core"(注意没有版本号)时它会自动解析liquibase 3.1.1,所以Spring Boot特定的依赖解析器在这里做了一些"魔术".

任何人都知道Spring Boot在Liquibase方面提供什么样的集成?我想在启动应用程序期间自动执行迁移(如果需要).

Dav*_*yer 6

Spring Boot知道Liquibase并在类路径上检测它(因此魔法依赖解析).Liquibase有一个SPI用于创建我们以特殊方式实现的服务,因此它们使用Spring Boot支持的可执行JAR格式.因此,简而言之,如果它存在并且您将其添加到您的上下文中它将起作用(如文档中简要提到).但是没有开箱即用的"自动配置"(如果你想要一个新功能,我们可以使用你的github问题来管理它).