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

升级Spring Boot 2.3.0.RELEASE后应用启动停滞求助

Spring Boot 2.3.0.RELEASE启动卡住问题排查思路

将Spring Boot版本升级至2.3.0.RELEASE后,应用启动时卡在最后一行,无法完成启动,启动日志如下:

09:26 23:57:52.276 [main            ] [WARN] [org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration$JpaWebConfiguration] - spring.jpa.open-in-view默认已启用,因此视图渲染期间可能会执行数据库查询。请显式配置spring.jpa.open-in-view以禁用此警告
09:26 23:57:52.547 [main            ] [INFO] [org.springframework.boot.actuate.endpoint.web.EndpointLinksResolver] - 在基础路径'/actuator'下暴露20个端点
09:26 23:57:52.597 [task-scheduler-1] [INFO] [org.hibernate.dialect.Dialect] - HHH000400: 使用方言:org.hibernate.dialect.PostgreSQL10Dialect
09:26 23:57:52.764 [main            ] [INFO] [springfox.documentation.spring.web.PropertySourcedRequestMappingHandlerMapping] - 将URL路径[/v2/api-docs]映射到方法[springfox.documentation.swagger2.web.Swagger2Controller#getDocumentation(String, HttpServletRequest)]
09:26 23:57:52.810 [main            ] [WARN] [com.netflix.config.sources.URLConfigurationSource] - 没有URL将被作为动态配置源轮询。
09:26 23:57:52.810 [main            ] [INFO] [com.netflix.config.sources.URLConfigurationSource] - 要启用URL作为动态配置源,请定义系统属性archaius.configurationSource.additionalUrls或在类路径中提供config.properties。
09:26 23:57:54.873 [main            ] [INFO] [org.springframework.cloud.stream.function.FunctionConfiguration$FunctionBindingRegistrar] - 由于配置中存在@EnableBinding注解,Functional binding已被禁用

以下是针对性排查方向:

  • 检查线程阻塞状态
    执行jstack <应用进程ID>导出线程栈,重点查看主线程及初始化相关线程是否处于BLOCKED或WAITING状态,排查是否存在死锁、资源竞争或外部资源(数据库、消息队列等)连接超时未响应的情况。

  • 排查Spring Cloud Stream兼容性
    日志最后一行提示因@EnableBinding禁用了Functional binding,Spring Boot 2.3.x与部分Spring Cloud Stream版本存在兼容性差异:

    • 核对Spring Cloud版本与Spring Boot 2.3.0.RELEASE的官方版本映射,确保版本匹配
    • 检查@EnableBinding对应的消息通道配置是否完整,是否存在未正确绑定的通道导致初始化停滞
  • 追踪JPA初始化进度
    日志仅加载了Hibernate方言,未显示JPA初始化完成信息:

    • 验证数据库连接配置正确性,确认应用能正常访问数据库
    • 开启JPA调试日志:添加spring.jpa.show-sql=true和logging.level.org.hibernate=DEBUG,追踪实体映射、数据库脚本执行等环节是否卡住
    • 检查是否有flyway/liquibase等数据库迁移脚本在执行过程中停滞
  • 验证Springfox Swagger兼容性
    Springfox部分版本与Spring Boot 2.3.x存在兼容性问题,可能导致启动阻塞:
    临时移除Swagger相关依赖或配置,若应用能正常启动,则需升级Springfox至兼容2.3.x的版本

  • 排查Actuator端点初始化
    日志显示暴露了20个Actuator端点,可临时关闭非必要端点,或添加logging.level.org.springframework.boot.actuate=DEBUG,查看端点初始化是否存在异常

  • 处理Archaius配置警告
    虽警告不直接导致阻塞,但建议按提示配置archaius.configurationSource.additionalUrls或添加config.properties文件,消除潜在配置加载风险

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 01:03:09