以下是 Eclipse Debug(调试)配置的终极实用指南(2025 版,Java 项目为主,Spring Boot、普通 Java、JUnit 都适用),看完这篇你会比 90% 的人更会用 Debug。
一、最快进入 Debug 模式(3 秒)
| 场景 | 操作方式(记住这几个就够了) |
|---|---|
| 直接调试上一次运行的程序 | 按 F11(最快!)或点工具栏红色小虫子 |
| 调试当前编辑的 main 类 | 在类里任意位置 → 右键 → Debug As → Java Application |
| 调试 Spring Boot 项目 | 右键主类 → Debug As → Spring Boot Application(推荐) |
| 调试某个单元测试 | 测试方法上右键 → Debug As → JUnit Test |
二、完整 Debug Configurations(需要改端口、条件断点、参数时才打开)
打开方式(任选其一):
- 工具栏小虫子 ▼ → Debug Configurations…
- 菜单 Run → Debug Configurations…
- 先 F11 一次 → 再点小虫子旁边的小三角 → Debug Configurations
三、最常用的 Debug 配置项(重点!)
| 类型 | 标签页 | 关键设置(复制粘贴就行) |
|---|---|---|
| Java Application | Main | Main class:填你的启动类(如 com.example.DemoApplication) |
| Arguments | VM arguments(最常用):-Xmx2g -Dspring.profiles.active=dev -Dserver.port=8081 | |
Program arguments:给 main(String[] args) 传参,比如 test 123 | ||
| Environment | 加环境变量,如 SPRING_PROFILES_ACTIVE=prod | |
| Common | 勾选 “Shared launch configuration” → 生成 .launch 文件可提交 git | |
| Remote Java Application(远程调试神器) | Connect | Host:服务器 IP Port:8000(常用) 启动服务器时加参数: -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000 |
| Spring Boot | 自动识别 | 基本不用改,Eclipse 已经很智能 |
四、超级实用 Debug 技巧(老鸟必备)
| 需求 | 操作方法 |
|---|---|
| 条件断点(只在特定条件才停) | 断点上右键 → Breakpoint Properties → Condition → 输入 id == 100 或 user != null |
| 异常断点(任何地方抛异常都停) | Debug 视图 → 点击 J!(Java Exception Breakpoint)→ 添加 NullPointerException |
| 跳过某些包不进(比如 Spring、MyBatis) | Debug Configurations → Source 标签 → Add → Java Project → 排除不需要的包 |
| 查看变量改值 | Variables 视图 → 选中变量 → 右键 → Change Value |
| 快速求值/改值 | 选中代码 → Ctrl + Shift + I(或右键 Watch/Inspect) |
| 强制返回(不执行完方法) | 在 Variables 或 Outline 视图右键方法 → Force Return |
| 热替换代码(改了代码不重启) | 默认开启(Build Automatically + Drop to frame) Spring Boot DevTools 更强 |
五、推荐的 Debug 配置命名(团队协作必备)
项目名 + 环境 + 用途
例如:
MyApp-Dev-本地调试
MyApp-Remote-10.0.0.123
MyApp-Debug-条件断点
MyApp-Profile-性能测试
六、常见 Debug 问题秒解决
| 问题 | 解决方法 |
|---|---|
| 断点打不上(空心圆) | Project → Clean 或关闭“Skip breakpoints”按钮(工具栏有个小跳过图标) |
| 源代码不匹配(Source not found) | Debug Configurations → Source 标签 → Add → Java Project 选中你的项目 |
| 远程调试连不上 | 服务器启动参数写对:-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000JDK9+ 要改成 address=*:8000 |
| 调试时端口被占用 | VM arguments 加 -Dserver.port=8081 |
| 想调试启动前的代码(static 块) | VM arguments 加 -XX:+AllowAttachSelf 或在第一行代码打断点后用 Attach 方式 |
现在告诉我你的具体场景,我直接给你现成的 Debug 配置 + VM 参数模板:
- 本地 Spring Boot 调试?
- 远程服务器调试?
- 想加条件断点?
- 调试单元测试?
- 想跳过某些框架源码?