【问题标题】:Liquibase cannot find changelog fileLiquibase 找不到更改日志文件
【发布时间】:2020-02-12 09:10:09
【问题描述】:

我的 Spring Boot 2 应用程序出现以下错误:

原因:liquibase.exception.ChangeLogParseException:读取迁移文件时出错:类路径资源 [src/main/resources/changelogs/changelog-1.0.xml] 无法解析为 URL,因为它不存在 在 liquibase.parser.core.xml.XMLChangeLogSAXParser.parseToNode(XMLChangeLogSAXParser.java:118) 在 liquibase.parser.core.xml.AbstractChangeLogParser.parse(AbstractChangeLogParser.java:15) 在 liquibase.changelog.DatabaseChangeLog.include(DatabaseChangeLog.java:525) 在 liquibase.changelog.DatabaseChangeLog.handleChildNode(DatabaseChangeLog.java:334) ... 省略了 190 个常用帧

在我们的应用程序属性中:spring.liquibase.change-log=classpath:/changelogs/changelog-master.xml

所有脚本都在spring boot的资源文件夹/src/main/resources/changelogs中构建

changelogs 中,fodler 是主 xml 和带有变更集的变更日志。

对 master xml 中变更集的变更日志的引用如下:

<include file="src/main/resources/changelogs/changelog-1-0.xml"/>

我找不到这不起作用的原因。

我尝试了relativeToChangelogFile="true" 并且仅在文件中使用file="changelog-1-0.xml" 并且这有效,为什么?

【问题讨论】:

    标签: java spring spring-boot liquibase


    【解决方案1】:

    您不应在主变更日志内的路径中包含src/main/resouces;这些目录不会反映在生成的 jar 中。试试changelongs/changelog-1-0.xml

    【讨论】:

      猜你喜欢
      • 2015-01-27
      • 2018-12-14
      • 2021-10-10
      • 1970-01-01
      • 2020-02-16
      • 1970-01-01
      • 1970-01-01
      • 2021-10-23
      • 2015-08-01
      相关资源
      最近更新 更多