Dropwizard迁移Liquibase新变更集不迁移

时间:2015-02-10 13:01:05

标签: java liquibase dropwizard

我已将新的变更集添加到migrations.xml,但是当我运行db migration config-file时,它不会应用新的变更集但只是使用以下输出:

INFO  [2015-02-10 12:59:34,193] liquibase: Successfully acquired change log lock
INFO  [2015-02-10 12:59:34,809] liquibase: Reading from public.databasechangelog
INFO  [2015-02-10 12:59:34,821] liquibase: Successfully released change log lock

我有两个变更集,只应用了第一个变更集。例如:

<changeSet id="1" author="me">

<changeSet id="2" author="me">

另外,我只看到databasechangelog表下的第一个变更集条目,这很奇怪。

如何应用我的新变更集?

2 个答案:

答案 0 :(得分:2)

我遇到了类似的问题,最终意识到migration.xml文件打包在生成的jar文件中。每次对migrations.xml进行更改时,都需要重新编译jar。

您还可以使用--migrations标志指定它在jar外部的迁移文件。

答案 1 :(得分:0)

我们遇到了类似的问题。我们的问题是我们只将stdout输出到日志文件中,但是liquibase会输出与stderr相关的任何错误,这些错误是以静默方式删除的。

对于实际错误:我们实际上在变更集1中存在哈希不匹配(与存储在数据库中的内容相比),这就是变更集2未运行的原因。