Flyway 7.14.0环境占位符无法识别FLYWAY_PLACEHOLDERS_RETSCHEMA求助
解决步骤
- 修正拼写错误:你的SQL文件第一行占位符名称拼写错误,
@{RETSSCHEMA}比定义的RETSCHEMA多了一个字母S,先将其修正为@{RETSCHEMA}。 - 适配占位符格式规则:Flyway 7.14.0版本默认的占位符格式为
${变量名},如果要使用@{变量名}的格式,需要在你的flyway_dev.conf配置文件中添加如下两行配置,指定自定义的占位符前后缀:
如果你不想修改配置文件,也可以直接将SQL中的占位符写法替换为默认的flyway.placeholderPrefix=@{ flyway.placeholderSuffix=}${RETSCHEMA}。 - 确认占位符替换功能未被关闭:检查
flyway_dev.conf中是否存在flyway.placeholders.replacement=false配置项,若存在则删除该配置或将值改为true,确保占位符替换功能处于开启状态。 - 验证环境变量有效性:执行Flyway迁移命令前,可执行
echo $FLYWAY_PLACEHOLDERS_RETSCHEMA确认环境变量已正确导出,输出值为DEV_RET即代表变量正常生效。
内容的提问来源于stack exchange,提问作者Karthik
相关产品推荐
相关产品推荐

