【问题标题】:Flyway not able find placeholder from conf fileFlyway 无法从 conf 文件中找到占位符
【发布时间】:2020-06-30 16:34:29
【问题描述】:

我正在使用 flyway 3.2.1 并希望在我的迁移脚本中使用占位符替换来根据环境替换架构名称

当我从 CLI 传递占位符时

initialize flyway:migrate -Dflyway.outOfOrder=true -DskipTests -Dflyway.placeholders.schemaName=testDbName

迁移工作正常。

但是当我尝试使用 flyawy.conf 文件做同样的事情时,我得到了异常 FlywayException:没有为占位符表达式提供值:${schemaName}

我尝试在 CLI 中传递文件路径和名称

initialize flyway:migrate -Dflyway.outOfOrder=true -DskipTests -Dflyway.configFiles=/resource/flyway.conf

我也尝试将配置文件放在与迁移脚本资源/db/migration 相同的目录中,但我得到了相同的异常

配置文件中的属性 flyway.placeholders.schemaName=testDbName

而sql是

insert into ${schemaName}.employee_department(emp_id,dept_id) values(123,87);

我是否遗漏了有关文件位置的信息或没有正确传递路径?

【问题讨论】:

  • 谁把它标记为没用,你能说明原因吗?问题的哪一部分让您确定我没有进行足够的研究?

标签: database-migration flyway


【解决方案1】:

使用 maven 属性提供 conf 文件路径

<configFile>src/main/resources/flyway.conf</configFile>

【讨论】:

    猜你喜欢
    • 2020-12-14
    • 1970-01-01
    • 2023-03-20
    • 2021-07-17
    • 2018-08-16
    • 2023-03-25
    • 2012-03-14
    • 2012-10-19
    • 2020-11-02
    相关资源
    最近更新 更多