IntelliJ调试Scala代码时点击返回值Evaluate Expression无反应该如何处理
IntelliJ Scala调试器Evaluate Expression异常及返回值引用解决方案
一、右键Evaluate Expression无响应问题修复
- 优先升级IntelliJ IDEA到2023.2及以上版本,同时配套升级Scala插件到v2023.2.22及以上版本,该版本已修复Scala调试上下文识别异常导致的求值窗口唤起失败问题。
- 临时快速解决方案:跳过右键操作直接用快捷键唤起求值窗口,Windows/Linux对应快捷键为
Alt+F8,macOS对应快捷键为⌥+F8,绝大多数场景下可以直接正常唤起窗口。 - 持久修复:进入
File > Invalidate Caches,勾选Clear debugger caches选项后重启IDEA,可清除损坏的调试缓存解决触发失效问题。
二、非合法标识符返回值的引用方法
IntelliJ调试器提供了内置隐式变量,不需要依赖面板显示的返回值名称即可引用:
- 直接使用
$_变量,该变量默认指向当前栈帧最近一次计算得到的返回值,可直接在Evaluate Expression窗口中调用其方法、访问属性,不受面板显示名称合法性影响。 - 若需要引用更早的返回值,可在求值窗口执行
DebuggerUtils.getLastFrameReturnValues(),会按时间顺序返回当前栈帧所有历史返回值的列表,按下标提取对应值即可。 - 也可以在Variables面板右键对应返回值条目,选择
Copy Value to Expression Evaluator,调试器会自动生成合法的引用语句填充到求值窗口,无需手动编写变量名。
内容的提问来源于stack exchange,提问作者Robin Green
相关产品推荐
相关产品推荐

