如何确保 Flyway 在我的 bean 之前加载?

How to make sure Flyway loads before my bean?

我有一个 Spring 引导应用程序,其中一个 Bean 从数据库加载配置数据。

现在我在配置 class 中设置了这个 Bean。但它似乎在 Flyway.

之前加载

如何确保 Flyway 在 我的 beans 加载之前 完成了它的工作?

您可以在启动前对其进行初始化Spring启动应用程序:

@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        // Init Flyway here
        SpringApplication.run(Application.class, args);
    }
}

第二个选项是根据 Flyway 为您的 bean 使用 @DependsOn 注释。