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

如何使用IntelliJ IDEA CE(社区版)调试Spring Boot应用

IntelliJ IDEA CE 调试Spring Boot REST API操作指引

你之前调试Grails用到的远程JVM调试逻辑完全可以复用在Spring Boot场景下,IntelliJ IDEA社区版原生支持所有调试能力,不需要安装付费插件。

方式一:和Grails调试逻辑一致的远程调试法(零学习成本)

整套流程和你之前的操作习惯完全匹配,步骤如下:

  • 配置构建工具的调试启动参数
    如果是Gradle构建的项目,打开根目录下的build.gradle文件,添加如下配置:
    bootRun {
        jvmArgs "-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=*:5005"
    }
    
    如果是Maven构建的项目,不需要修改配置文件,启动时带参数即可。
  • 启动应用等待调试器连接
    Gradle项目:打开IDEA底部的Terminal面板,执行./gradlew bootRun(Windows系统执行gradlew.bat bootRun),等控制台输出Listening for transport dt_socket at address: 5005时,说明应用已经在5005端口等待调试连接。
    Maven项目:在Terminal执行mvn spring-boot:run -Dspring-boot.run.jvmArguments="-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=*:5005",同样等待5005端口监听的提示出现。
  • 配置IDEA远程调试项
    点击IDEA顶部右上角的运行配置下拉框,选择Edit Configurations,在弹出窗口左上角点击+号,列表中选择Remote JVM Debug,所有配置保持默认值即可(Host为localhost,端口为5005),点击OK保存。
  • 打断点启动调试
    在需要排查问题的业务代码行,点击行号旁的空白位置打出红色断点标记,点击右上角运行配置旁的绿色虫子图标(Debug按钮),控制台输出Connected to the target VM即为连接成功。此时向REST API发送请求,代码执行到断点位置会自动暂停,你可以查看变量值、单步执行定位问题,操作和之前调试Grails完全一致。

方式二:IDEA本地直接调试(无需敲命令,更简便)

IntelliJ IDEA CE原生支持Spring Boot直接调试启动,不需要走远程连接流程:

  • 找到项目的启动类:即标注了@SpringBootApplication注解的类,类名一般为*Application,类中包含public static void main(String[] args)主方法。
  • 点击主方法旁行号位置的绿色箭头,在弹出选项中选择Debug 'xxxApplication',应用会直接以调试模式启动。
  • 在业务代码行打好断点,请求触发到对应代码时就会自动暂停,后续调试操作和远程调试完全一致。

注意:如果直接启动报类不存在或启动失败,先在Terminal执行一次./gradlew build(Gradle项目)或mvn compile(Maven项目)完成项目编译,再启动调试即可,绝大多数启动异常都是未提前编译导致的。

常见问题排查

  • 远程调试连接失败:先确认控制台已经输出5005端口监听的提示,未出现提示不要提前点Debug连接;如果提示端口占用,把启动参数和远程调试配置里的5005改成其他未被占用的端口(比如5006)即可。
  • 断点不生效:确认断点打在实际执行业务逻辑的代码行,不要打在空行、注释、方法声明行上;如果修改过代码没有重新编译启动,断点也会失效,重新build项目后再调试即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 15:48:45