【发布时间】:2014-06-06 11:35:12
【问题描述】:
我在 Liquibase 中有一个 CustomTaskChange(除了其他变更集)。
我希望我的应用程序在实际执行之前显示所有 ChangeSet 的 SQL。据我了解,updateSQL 应该预览 SQL 并且什么都不执行。但是,CustomTaskChange 会立即执行。我原以为CustomTaskChange 在调用updateSQL 时会被忽略。
变更集:
<changeSet id="2" author="clu">
<comment>Print out 'helloworld'.</comment>
<customChange class="path.to.HelloWorldUpdate">
</customChange>
</changeSet>
CustomTaskChange:
public class HelloWorldUpdate implements CustomTaskChange {
@Override
public void execute(Database database) throws CustomChangeException {
System.out.println("HELLO WORLD!!");
}
}
当调用updateSQL 时,控制台会打印“HELLO WORLD!!”
这是一个错误吗?有解决办法吗?
谢谢!
[编辑]
【问题讨论】: