VS Code中Flutter&Dart调试模式断点失效求助
VS Code Flutter/Dart调试断点失效、单步跳转到framework.dart的解决方法
检查断点状态与运行模式
如果断点是灰色空心圆点,说明没绑定到可执行代码。确保当前运行的是Debug模式:查看launch.json中flutterMode字段是否设为"debug",不要用Release或Profile模式(这两种模式会编译优化,断点无法生效)。多模块项目还要确认断点所在文件属于当前运行的目标模块。关闭"跳过框架代码"选项
单步调试直接跳framework.dart,大概率是开启了这个设置。在VS Code调试面板右上角找到「跳过框架代码」图标(箭头加斜杠),点击取消选中;或者打开设置搜索Dart: Debug Skip Framework Code,将选项设为false。清理缓存并重启调试
项目缓存异常可能导致调试信息不匹配。执行以下命令:flutter clean flutter pub get之后重启VS Code,再重新启动调试会话。
核对launch.json配置
错误的调试配置会干扰断点行为。打开.vscode/launch.json,确保program字段指向正确的main.dart路径,比如:"program": "${workspaceFolder}/lib/main.dart"移除不必要的自定义调试参数,避免影响调试逻辑。
更新插件与SDK
旧版本的Flutter/Dart插件或SDK可能存在调试兼容性bug。在VS Code扩展市场更新Flutter和Dart插件;执行flutter upgrade将SDK升级到最新稳定版。关闭Debug模式下的代码优化
部分场景下Debug模式会被意外开启优化:- Android:打开
android/app/build.gradle,确认debug闭包中minifyEnabled和shrinkResources均为false; - iOS:打开Xcode,在Build Settings中找到Optimization Level,Debug模式下设置为
None。
- Android:打开
内容的提问来源于stack exchange,提问作者macropyre
相关产品推荐
相关产品推荐

