Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Flyway H2数据库创建问题_Java_Spring_Spring Boot - Fatal编程技术网

Java Flyway H2数据库创建问题

Java Flyway H2数据库创建问题,java,spring,spring-boot,Java,Spring,Spring Boot,根据我项目的文件结构,我无法找出问题所在,因为它没有遵循正确的文件路径[Pom.xml] Caused by: org.flywaydb.core.api.FlywayException: Wrong migration name format: V1.2_create_shipwreck.sql(It should look like this: V1.2__Description.sql) at org.flywaydb.core.internal.resolver.Migratio

根据我项目的文件结构,我无法找出问题所在,因为它没有遵循正确的文件路径[Pom.xml]

Caused by: org.flywaydb.core.api.FlywayException: Wrong migration name format: V1.2_create_shipwreck.sql(It should look like this: V1.2__Description.sql)
    at org.flywaydb.core.internal.resolver.MigrationInfoHelper.extractVersionAndDescription(MigrationInfoHelper.java:54) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.internal.resolver.sql.SqlMigrationResolver.scanForMigrations(SqlMigrationResolver.java:133) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.internal.resolver.sql.SqlMigrationResolver.resolveMigrations(SqlMigrationResolver.java:99) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.internal.resolver.sql.SqlMigrationResolver.resolveMigrations(SqlMigrationResolver.java:49) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.internal.resolver.CompositeMigrationResolver.collectMigrations(CompositeMigrationResolver.java:122) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.internal.resolver.CompositeMigrationResolver.doFindAvailableMigrations(CompositeMigrationResolver.java:104) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.internal.resolver.CompositeMigrationResolver.resolveMigrations(CompositeMigrationResolver.java:90) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.internal.resolver.CompositeMigrationResolver.resolveMigrations(CompositeMigrationResolver.java:43) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.internal.info.MigrationInfoServiceImpl.refresh(MigrationInfoServiceImpl.java:114) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.internal.command.DbValidate$2.call(DbValidate.java:164) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.internal.command.DbValidate$2.call(DbValidate.java:157) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.internal.util.jdbc.TransactionTemplate.execute(TransactionTemplate.java:75) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.internal.command.DbValidate.validate(DbValidate.java:157) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.Flyway.doValidate(Flyway.java:1280) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.Flyway.access$100(Flyway.java:71) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.Flyway$1.execute(Flyway.java:1176) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.Flyway$1.execute(Flyway.java:1168) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.Flyway.execute(Flyway.java:1650) ~[flyway-core-5.0.0.jar:na]
    at org.flywaydb.core.Flyway.migrate(Flyway.java:1168) ~[flyway-core-5.0.0.jar:na]
    at org.springframework.boot.autoconfigure.flyway.FlywayMigrationInitializer.afterPropertiesSet(FlywayMigrationInitializer.java:66) ~[spring-boot-autoconfigure-1.3.1.RELEASE.jar:1.3.1.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1637) ~[spring-beans-4.2.4.RELEASE.jar:4.2.4.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1574) ~[spring-beans-4.2.4.RELEASE.jar:4.2.4.RELEASE]
    ... 18 common frames omitted

您的迁移文件缺少一个下划线。将
V1.2_create_shipcrash.sql
重命名为
V1.2_create_shipcrash.sql
,它应该可以工作。请参见位于

的Flyway命名约定更改了命名约定,因为它仍然给出相同的错误。org.springframework.beans.factory.BeanCreationException:创建名为“flywayInitializer”的bean时出错,该bean在类路径资源[org/springframework/boot/autoconfigure/flyway/FlywayAutoConfiguration$FlywayConfiguration.class]中定义:调用init方法失败;嵌套异常为org.flywaydb.core.api.FlywayException:验证失败:检测到已解决的迁移未应用于数据库:1.2这是不同的错误。您可能同时应用了V1.0、V1.1和V1.3。现在,通过修复下划线,Flyway找到了V1.2版,该版本以前没有应用过,现在它崩溃了。那么有什么修复方法呢?因为它现在看起来很好,这超出了这个问题的范围,你应该创建一个新的问题。若对您来说没问题,您可以简单地删除数据库,若不搜索:如何修复失败的flyway迁移。