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

本地开发模式启动JHipster微服务时网关H2连接失败如何解决

问题核心原因

网关应用开发环境(dev profile)下需要的H2数据库相关依赖的作用域被限制为test,正常运行阶段无法加载对应驱动。

从错误栈最后一行可直接定位问题:应用尝试创建H2连接工厂时,检测到的可用驱动只有postgresql和pool,缺少H2驱动。这与你提供的网关pom.xml配置完全对应:test作用域的依赖仅会在单元测试执行时加载,dev环境启动属于正常运行阶段,不会加载该范围的依赖。

解决方案

方案一:调整依赖作用域(继续使用H2作为开发环境数据库)

修改网关项目pom.xml中的H2相关依赖配置,移除<scope>test</scope>配置,调整后如下:

<dependency>
    <groupId>com.h2database</groupId>
    <artifactId>h2</artifactId>
</dependency>
<dependency>
    <groupId>io.r2dbc</groupId>
    <artifactId>r2dbc-h2</artifactId>
</dependency>

修改完成后重新执行mvnw启动网关即可。

方案二:切换开发环境数据库为PostgreSQL

如果不想使用H2,可修改网关src/main/resources/config/application-dev.yml中的数据库配置,将数据源从H2改为PostgreSQL,提前启动项目生成的PostgreSQL docker容器后再启动网关即可。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 15:06:06