在 gradle 中为 liquibase 插件设置工作目录?

Setting work directory in gradle for liquibase plugin?

所以我要从 Maven 迁移到 Gradle,我 运行 遇到了一些麻烦。这是一个多项目构建,其中一个子项目是 liquibase 迁移。我已成功将其移动到 Gradle,但初始变更集以 "relative" 路径形式引用了其他变更集,例如:

变更集-master.xml

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

我试过使用 ${} 属性在 changelog-master.xml 文件中使用变量替换,但没有成功。现在我有单独的 liquibase 脚本 运行,但如果可能的话,我希望将它们作为主构建的一部分调用。任何帮助将不胜感激。

如果您需要包含相对路径,relativeToChangelogFile 可以帮助您。

...
 <include file="changelog-1.xml" relativeToChangelogFile="true"/>
 <include file="changelog-2.xml" relativeToChangelogFile="true"/>
 <include file="changelog-3.xml" relativeToChangelogFile="true"/>
...