Spring Boot项目如何指定不在类路径下的Liquibase change-log路径
Spring Boot读取自定义位置Liquibase change-log配置方案
- 直接修改Spring Boot核心配置文件(application.yaml/application.properties)中的
spring.liquibase.change-log配置项,按change-log的实际存放位置选择对应配置规则即可:- change-log存放在项目resources目录下(类路径内)
配置前缀加classpath:,后面跟上change-log在resources目录下的相对路径,示例如下:
# application.yaml 配置示例 spring: liquibase: change-log: classpath:db/liquibase/changelog-master.yaml# application.properties 配置示例 spring.liquibase.change-log=classpath:db/liquibase/changelog-master.yaml- change-log存放在项目外部的文件系统路径(类路径外)
配置前缀加file:,后面跟上change-log在系统中的绝对路径,示例如下:
# application.yaml 配置示例 spring: liquibase: change-log: file:/opt/app/config/changelog-master.yaml - change-log存放在项目resources目录下(类路径内)
- 问题排查提示:如果配置完成后仍然报路径找不到错误,优先检查编译后的项目输出目录(Maven项目默认是target/classes,Gradle项目默认是build/classes)下是否存在对应路径的change-log文件,确认资源目录已被正确标记、路径大小写、文件名无拼写错误。
内容的提问来源于stack exchange,提问作者chaika_sv
相关产品推荐
相关产品推荐

