【问题标题】:liquibase initialization with r2dbc config使用 r2dbc 配置进行 liquibase 初始化
【发布时间】:2021-08-16 16:34:41
【问题描述】:

尝试使用 r2dbc 和 init 数据库运行 spring boot。 我的 build.gradle 看起来像:

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-data-r2dbc'
    implementation 'org.springframework.boot:spring-boot-starter-webflux'
    implementation 'org.liquibase:liquibase-core'

    compileOnly 'org.projectlombok:lombok'

    runtimeOnly 'org.liquibase:liquibase-core'
    runtimeOnly 'com.h2database:h2'
    runtimeOnly 'io.r2dbc:r2dbc-h2'
    runtimeOnly 'io.r2dbc:r2dbc-postgresql'
    runtimeOnly 'org.postgresql:postgresql'

    annotationProcessor 'org.projectlombok:lombok'

    testImplementation 'org.springframework.boot:spring-boot-starter-test'
    testImplementation 'io.projectreactor:reactor-test'
}

弹簧属性:

spring.r2dbc.url=r2dbc:postgresql://127.0.0.1:5432/test
spring.r2dbc.username=postgres
spring.r2dbc.password=123
spring.r2dbc.pool.enabled=true
spring.r2dbc.pool.initial-size=10
spring.data.r2dbc.repositories.enabled=true

spring.liquibase.change-log=classpath:/db/changelog/db.changelog-master.yaml
spring.liquibase.url=jdbc:postgresql://127.0.0.1:5432/test
spring.liquibase.user=postgres
spring.datasource.driver-class-name=org.postgresql.Driver
logging.level.liquibase = INFO

开始后它会落下

Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [liquibase.integration.spring.SpringLiquibase]: Factory method 'liquibase' threw exception; nested exception is java.lang.NoClassDefFoundError: org/springframework/jdbc/datasource/SimpleDriverDataSource

我做错了什么?

【问题讨论】:

  • 更新。如果我添加 org.springframework.boot:spring-boot-starter-data-jpa 依赖项,它会以 NoBeanAvailable 异常开始下降:无法实例化存储库。

标签: spring-boot liquibase r2dbc


【解决方案1】:

您需要添加对org.springframework:spring-jdbc 的依赖项。来自Spring Boot reference documentation:

或者,您可以配置 Flyway 或 Liquibase,以便在迁移期间为您配置 DataSource。这两个库都提供属性来设置要迁移的数据库的 url、用户名和密码。

选择此选项时,org.springframework:spring-jdbc 仍然是必需的依赖项。

【讨论】:

    猜你喜欢
    • 2021-03-28
    • 2022-11-07
    • 2017-09-23
    • 2014-04-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-04
    相关资源
    最近更新 更多