You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot启动触发Liquibase 4.0不支持绝对路径错误如何解决?

Liquibase 4.0+ 绝对路径引用报错解决方案

根因定位

报错并非来自application.yaml里的主changelog路径配置,而是来自master xml文件内部的<include>标签路径规则不符合Liquibase 4.0+的要求。Liquibase 4.0+移除了无上下文的绝对路径解析规则,默认会把不带相对路径标识的include文件路径识别为绝对路径处理。

解决方案

方案1:使用相对路径引用(推荐)

因为db-changelog-1.0.xml和db-changelog-master.xml处于同一目录,直接在include标签添加relativeToChangelogFile="true"属性,标识路径相对于当前changelog文件解析:

<include file="db-changelog-1.0.xml" relativeToChangelogFile="true"/>

方案2:使用全classpath路径引用

如果不想用相对路径,直接给include的file属性补全classpath全路径:

<include file="classpath:/db/changelog/db-changelog-1.0.xml"/>

额外校验项

  • 主配置保留classpath:/db/changelog/db-changelog-master.xml写法即可,开头的斜杠可以避免不同容器的classpath加载差异
  • 确认项目的src/main/resources目录已被标记为资源根目录,编译后target/classes下存在db/changelog目录及对应xml文件

内容的提问来源于stack exchange,提问作者Clancinio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 18:06:02