当我有一个版本号为0的文件时,Flyway不会将其选中。
Maven依赖关系:
<dependency>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-core</artifactId>
<version>3.2.1</version>
</dependency>
弹簧配置:
<bean id="flyway" class="org.flywaydb.core.Flyway" init-method="migrate">
<property name="dataSource" ref="dataSource" />
<property name="baselineOnMigrate" value="true" />
<property name="locations" value="classpath:/META-INF/db/" />
<property name="placeholders">
<map>
<entry key="username" value="" />
</map>
</property>
</bean>
类路径中的文件:/META-INF/db/
-
sql/V0_1__INITIAL_BUILD。sql(创建表)
-
sql/V1___from-0.1.sql(添加一列)
-
sql/V1_4__from-1.3.sql(向表中添加索引)
当我启动服务时,会出现此错误
java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not exist
这是插入到
方案_版本
表格:
COLUMN |ROW1 |ROW2
version_rank |1 |2
installed_rank |1 |2
version |1 |1.3
description |Flyway Baseline |from-0.12
type |BASELINE |SQL
script |Flyway Baseline |sql/V1_3__from-0.1.sql
checksum |-993203535 |
installed_by |DBUSER2 |DBUSER2
installed_on |25-AUG-15 |25-AUG-15
execution_time |0 |120
success 1 |0
看起来它忽略了
sql/V0_1__INITIAL_BUILD.sql
实际创建表并立即移动到
sql/V1___来自-0.1.sql
并且失败。
命令行工具似乎没有这个问题。
是不能使用Spring将0作为版本号,还是我遗漏了一些明显的东西?