Java Flyway 未拾取迁移
Java Migrations not being picked up by Flyway
我正在尝试使用 Flyway 来 运行 我的数据库迁移脚本。我有两个 SQL 脚本和一个 Java 我正在尝试 运行 的脚本。当我 运行 ./gradlew flywayMigrate 或 gradle flywayMigrate 时,它只会在 SQL 脚本而不是 Java 脚本上使用。
我的项目设置如下:
database_migrations
--->src
------>main/java
--------->db/migration
-------------V3__load_data.java
------>main/resources
--------->db/migration
-------------V1__base_table.sql
-------------V2__stored_procedures.sql
我尝试了多种解决方案来将 java 脚本转换为 运行,例如指定 flyway.locations=classpath:db/migration
,但这只会导致此输出 Unable to resolve location classpath:db/migration
。我试过将它移动到其他包。我试过将它放在一个罐子里,然后从命令行工具 运行ning,但它没有接收到它。我已经尝试了 JDBCMigration 和 SpringJDBCMigration class。
我是不是遗漏了一些东西 运行?
当我在我的 jenkins 实例中使用 gradlew compileJava 运行 它抛出 Could not find tools.jar,不确定是否我有亲戚关系
我解决了我的问题。我发现问题是我的 java_home 没有指向任何地方。一旦我设置了我的代码编译但 java 迁移仍然没有被接受。我将 -Dflyway.locations=classpath:db.migrations
添加到 gradle 语句的末尾,它立即将其拾取!希望这对有需要的人有所帮助!
我正在尝试使用 Flyway 来 运行 我的数据库迁移脚本。我有两个 SQL 脚本和一个 Java 我正在尝试 运行 的脚本。当我 运行 ./gradlew flywayMigrate 或 gradle flywayMigrate 时,它只会在 SQL 脚本而不是 Java 脚本上使用。
我的项目设置如下:
database_migrations
--->src
------>main/java
--------->db/migration
-------------V3__load_data.java
------>main/resources
--------->db/migration
-------------V1__base_table.sql
-------------V2__stored_procedures.sql
我尝试了多种解决方案来将 java 脚本转换为 运行,例如指定 flyway.locations=classpath:db/migration
,但这只会导致此输出 Unable to resolve location classpath:db/migration
。我试过将它移动到其他包。我试过将它放在一个罐子里,然后从命令行工具 运行ning,但它没有接收到它。我已经尝试了 JDBCMigration 和 SpringJDBCMigration class。
我是不是遗漏了一些东西 运行?
当我在我的 jenkins 实例中使用 gradlew compileJava 运行 它抛出 Could not find tools.jar,不确定是否我有亲戚关系
我解决了我的问题。我发现问题是我的 java_home 没有指向任何地方。一旦我设置了我的代码编译但 java 迁移仍然没有被接受。我将 -Dflyway.locations=classpath:db.migrations
添加到 gradle 语句的末尾,它立即将其拾取!希望这对有需要的人有所帮助!