如果我指定
flyway.callbacks=com.myclass.CustomCallBack
它被称为罚款,但我注意到它似乎抑制了SQL回调功能。有没有办法让两者都有?我注意到有一个SqlScriptFlywayCallback,但那是你的“内部”类之一....
答案 0 :(得分:1)
目前唯一的方法是引用内部类和您自己的类。请在问题跟踪器中提交增强请求。
答案 1 :(得分:0)
作为一种简单的解决方法,您可以像Axel建议的那样初始化SqlScriptFlywayCallback。这是我如何做到的,给定了一个初始化的flyway实例:
DbSupport dbSupport;
try {
dbSupport = DbSupportFactory.createDbSupport(flyway.getDataSource().getConnection(), false);
} catch (SQLException e) {
throw new RuntimeException("Could not get connection to database");
}
final FlywayCallback runSqlCallbacks = new SqlScriptFlywayCallback(
dbSupport,
flyway.getClassLoader(),
new Locations(flyway.getLocations()),
new PlaceholderReplacer(flyway.getPlaceholders(),
flyway.getPlaceholderPrefix(),
flyway.getPlaceholderSuffix()),
flyway.getEncoding(),
flyway.getSqlMigrationSuffix()
);
flyway.setCallbacks(
runSqlCallbacks,
new MyCallback(...));