在我的项目中,我一直在使用命令行启动用于初始化数据库的运行通道。现在,数据库更新需要一些复杂的操作,因此我编写了一些Java迁移。我希望spring-boot在启动时可以使用flyway初始化数据库。我以前使用的flyway版本是4.2.0,因此我仍然想在spring-boot中使用flyway的4.2.0版本。我在pom.xml中添加了4.2.0 flyway依赖关系,如下所示:
<dependency>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-maven-plugin</artifactId>
<version>4.2.0</version>
</dependency>
<dependency>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-core</artifactId>
<version>4.2.0</version>
</dependency>
但是,每次我启动spring-boot时,都会得到一条信息飞车v.3.2.1启动。
[2018-08-06 11:07:06.645][Thread-2] INFO o.f.c.internal.util.VersionPrinter - Flyway 3.2.1 by Boxfuse
然后我得到一个错误,提示“ version_rank”不存在。然后我发现flyway-maven-plugin v.4.2.0取决于flyway-core v.3.2.1。 flyway-maven-plugin v.4.2.0 dependencies。 因此,我必须做些什么才能使spring-boot在启动时使用flyway v.4.2.0初始化数据库。