You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot 3.1.0-SNAPSHOT新项目启动报错:无法配置DataSource

解决Spring Boot 3.1.0-SNAPSHOT启动时数据源配置失败问题

问题原因

你的项目引入了spring-boot-starter-data-jpa依赖,Spring Boot会自动触发数据源的自动配置逻辑,但当前项目既没有添加嵌入式数据库(如H2、HSQL)的依赖,也没有配置外部数据库的连接信息,导致无法找到合适的数据源驱动,从而启动失败。

解决方案

根据你的需求选择以下任意一种方案:

方案1:使用嵌入式H2数据库(快速测试用)

在build.gradle.kts的dependencies块中添加H2数据库依赖:

dependencies {
    implementation("org.springframework.boot:spring-boot-starter-data-jpa")
    implementation("org.springframework.boot:spring-boot-starter-web")
    implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
    implementation("org.jetbrains.kotlin:kotlin-reflect")
    // 添加H2嵌入式数据库依赖
    implementation("com.h2database:h2")
    testImplementation("org.springframework.boot:spring-boot-starter-test")
}

添加后,Spring Boot会自动配置H2数据库,无需额外配置即可启动项目。如果需要访问H2控制台,可以在src/main/resources/application.properties中添加:

spring.h2.console.enabled=true
spring.h2.console.path=/h2-console

方案2:移除JPA相关依赖(不需要数据库功能时)

如果你的项目暂时不需要数据库操作,可以移除JPA相关的依赖和插件:

  1. 移除build.gradle.kts中plugins块的kotlin("plugin.jpa"):
plugins {
    id("org.springframework.boot") version "3.1.0-SNAPSHOT"
    id("io.spring.dependency-management") version "1.1.0"
    kotlin("jvm") version "1.8.20"
    kotlin("plugin.spring") version "1.8.20"
    // 移除JPA插件
    // kotlin("plugin.jpa") version "1.8.20"
}
  1. 移除dependencies块中的spring-boot-starter-data-jpa:
dependencies {
    // 移除JPA starter
    // implementation("org.springframework.boot:spring-boot-starter-data-jpa")
    implementation("org.springframework.boot:spring-boot-starter-web")
    implementation("com.fasterxml.jackson.module:jackson-module-kotlin")
    implementation("org.jetbrains.kotlin:kotlin-reflect")
    testImplementation("org.springframework.boot:spring-boot-starter-test")
}

方案3:配置外部数据库(生产环境用)

如果需要连接外部数据库(如MySQL),步骤如下:

  1. 添加对应数据库驱动依赖,以MySQL为例,在dependencies中添加:
implementation("com.mysql:mysql-connector-j")
  1. 在src/main/resources/application.properties中配置数据库连接信息:
spring.datasource.url=jdbc:mysql://localhost:3306/your_database_name
spring.datasource.username=your_username
spring.datasource.password=your_password
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# JPA相关配置(可选)
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true

内容的提问来源于stack exchange,提问作者Prasad B

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 15:22:38