【问题标题】:Java Migrations not being picked up by FlywayFlyway 未接收 Java 迁移
【发布时间】:2017-12-23 20:57:36
【问题描述】:

我正在尝试使用 Flyway 运行我的数据库迁移脚本。我有两个 SQL 脚本和一个试图运行的 Java 脚本。当我运行 ./gradlew flywayMigrate 或 gradle flywayMigrate 时,它​​只会选择 SQL 脚本,而不是 Java 脚本。
我的项目设置如下:

database_migrations
--->源
-------->主/java
--------->数据库/迁移
-------------V3__load_data.java
-------->主要/资源
--------->数据库/迁移
-------------V1__base_table.sql
-------------V2__stored_procedures.sql

我尝试了多种解决方案来运行 java 脚本,例如指定 flyway.locations=classpath:db/migration,但这只会导致此输出 Unable to resolve location classpath:db/migration。我曾尝试将其移至其他软件包。我试过把它放在一个罐子里并从命令行工具运行,但它没有把它捡起来。我已经尝试过 JDBCMigration 和 SpringJDBCMigration 类。

我是否遗漏了它应该如何运行的东西?

当我在我的 jenkins 实例中使用 gradlew compileJava 运行它时,它会抛出找不到 tools.jar,不确定这是否相关

【问题讨论】:

    标签: java database-migration flyway


    【解决方案1】:

    我解决了我的问题。我发现问题是我的 java_home 没有指向任何地方。一旦我设置了我的代码已编译,但 java 迁移仍然没有被选中。我将-Dflyway.locations=classpath:db.migrations 添加到我的 gradle 语句的末尾,它立即将其拾起!希望这可以帮助其他有需要的人!

    【讨论】:

      猜你喜欢
      • 2016-03-12
      • 2016-12-12
      • 2016-09-24
      • 1970-01-01
      • 2016-04-27
      • 2023-03-13
      • 2015-01-02
      • 2019-12-27
      • 2020-04-29
      相关资源
      最近更新 更多