Flyway迁移文件未被提取

时间:2014-06-16 14:49:07

标签: flyway

Project目前包含4个sql迁移文件,但未获取最新的迁移文件ddl/V201406161418__Add_tracking_codes.sql

通过此方法运行迁移(删除错误处理):

@PostConstruct
private void onStartup() {
    Flyway flyway = new Flyway();
    flyway.setInitOnMigrate(true);
    flyway.setLocations(getLocations()); // abstract String[] getLocations()
    flyway.setOutOfOrder(true);
    flyway.setTable(getTable()); // abstract String getTable()

    for(DataSource ds : getDataSources()) { // abstract List<DataSource> getDataSources()
        flyway.setDataSource(ds);
        flyway.repair();
        for (MigrationInfo i : flyway.info().all()) {
            log.info("migrate task: " + i.getVersion() + " : "
                    + i.getDescription() + " from file: " + i.getScript());
        }
        flyway.migrate();
    }
}

这就是我在日志中看到的:

  

迁移任务:201405131722:文件中的初始架构:   DDL / V201405131722__Initial_schema.sql

     

迁移任务:201405131734:文件中的初始产品数据:   CFG / V201405131734__Initial_product_data.sql

     

迁移任务:201406091356:文件费用增加:   CFG / V201406091356__Fee_increase.sql

     

2014-06-16 16:01:58 WARN DbMigrate:47 - outOfOrder模式处于活动状态。   架构ncsp的迁移可能无法重现。

     

2014-06-16 16:01:58 INFO DbMigrate:43 - 架构ncsp是最新的。   无需迁移。

如您所见,在同一目录中有一个迁移文件。我可以看到该文件部署在glassfish服务器上。

还有另一个因为我没有看到它被忽略的原因吗?

1 个答案:

答案 0 :(得分:1)

原来我正在测试的是JRebel。它接管了资源加载,而不是在jar文件中查找,它正在查看其缓存目录。