org.springframework.beans.factory.BeanCreationException:创建名称为'flywayInitializer'的bean时出错

时间:2020-07-28 15:47:19

标签: java spring postgresql docker

我正在使用IntelliJ创建连接到PostgreSQL数据库的简单Web应用程序,但是使用docker postgres创建名为“ demodb”的数据库后,由于它返回的数据库不存在,因此无法运行该应用程序。但是,如果我将数据库更改为默认数据库(template1),则可以使用。

这是我的代码

pom.xml:

    <dependency>
            <groupId>org.flywaydb</groupId>
            <artifactId>flyway-core</artifactId>
    </dependency>

application.yml:

server:
  port: 8090
spring:
  jpa:
    hibernate:
      ddl-auto: create
    database-platform: org.hibernate.dialect.PostgreSQLDialect
  datasource:
    url: "jdbc:postgresql://localhost:5432/demodb"
    username: postgres
    password: password

db.migration:

CREATE TABLE product(
id UUID NOT NULL PRIMARY KEY ,
name VARCHAR(50) NOT NULL,
code VARCHAR(50) NOT NULL,
location VARCHAR(50) NOT NULL,
quantity int,
weight float
);

我可以在docker postgres中运行以创建表,创建用户,并且一切运行良好,但是一旦更改应用程序中的数据库名称,我就无法在intelliJ中运行该应用程序,因为它会返回创建名称为flywayInitializer的bean的错误。 yml从template1到我通过docker创建的demodb 在网址中。

有人可以帮我吗?

0 个答案:

没有答案