Goland debug 断点无效解决方案

本文介绍了一种Goland中遇到的断点调试失效问题及其解决方案。具体表现为设置的断点无法使程序暂停执行。经过排查发现是由于360软件导致的问题,关闭360后问题得以解决。

来自:指月 https://www.lixueduan.com

问题: Goland debug 断点无效
解决方案: 如果有运行 360 的话,关掉就正常了。


如果你对云原生技术充满好奇,想要深入了解更多相关的文章和资讯,欢迎关注微信公众号。

搜索公众号【探索云原生】即可订阅


-----------------以下为具体情况-------------------------

具体表现为,在 Goland 中打断点后,运行的时候不会在断点处停止,直接就运行完成了。
在这里插入图片描述
在这里插入图片描述
打的这些断点都没效果,之前的还好好的,今天突然出现了这个问题。

最终在 Google 上找到了罪魁祸首,具体见GO-9159

原来是 360 的问题,关掉之后立马就正常了。

离了个大谱,用来清理垃圾之后忘了关掉,整出这个幺蛾子。

### 问题分析 在 Eclipse 中调试 Java 程序时,断点无法生效是一个常见问题。可能的原因包括:Eclipse 的调试模式未正确启动、项目配置不完整、编译选项中未启用行号信息(line number attributes),或调试器与 JVM 的连接存在问题。 --- ### 常见解决方法 1. **确认使用正确的调试方式** 在 Eclipse 中启动调试应通过菜单项 `Debug As` > `Java Application`(适用于普通 Java 应用)或选择 Tomcat 调试模式(适用于 Web 应用)。如果误用 `Run As` 启动程序,断点将不会被触发[^2]。 2. **检查是否跳过所有断点** Eclipse 提供了一个“Skip All Breakpoints”功能,若该功能被激活,所有断点将失效。可通过以下方式恢复: - 点击顶部菜单栏的 `Run` > `Skip All Breakpoints` 取消勾选; - 或使用快捷键 `Ctrl + Alt + B` 切换状态; - 验证断点是否恢复正常(断点图标不应有斜线覆盖)[^1]。 3. **确保类文件包含行号信息** 若工程编译时未生成行号属性,调试器无法定位代码行。需手动启用: - 右键点击项目 > `Properties`; - 进入 `Java Compiler` > `Classfile Generation`; - 勾选 `Add line number attributes to generated class files (used by the debugger)`; - 清理并重新构建项目以应用更改[^3]。 4. **优化项目结构提升调试响应速度** 如果当前包中包含大量无关类,可能影响调试器加载和识别断点。建议将主类单独放置在一个干净的包中,并移除无用类,以提高调试效率。 5. **Spring Boot 项目特殊处理** 对于 Spring Boot 项目,若使用 `spring-boot:run` 插件运行,需在 JVM 参数中启用调试支持: ```shell spring-boot:run -Drun.jvmArguments="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=4004" ``` 上述命令将启动远程调试模式,允许 Eclipse 通过指定端口连接并进行断点调试[^4]。 --- ### 相关问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值