在 IntelliJ 调试中保存对象的状态?

有谁知道是否可以在调试时保存对象的状态?

我想比较两个不同执行周期中对象的状态。

奖金问题:任何有编写IntelliJ插件经验的人?IntelliJ SDK 是否允许在调试模式下访问调试值?将它们从 IntelliJ 缓存中读出并写入磁盘?


答案 1

作为一个非常简单的解决方案,您可以对“变量”或“监视”视图中的对象使用“完全展开树节点”操作。默认情况下,此操作绑定到 Numpad * 键 (),并打开整个对象树。然后,使用 shift 选择打开的对象树的所有元素,并将它们复制到剪贴板。*


答案 2

为了扩展Josep的答案,你最好的选择是将Google的Gson库导入到你的项目中并运行:

Gson gson = new Gson();
gson.toJson(yourObject);

然后从结果中复制该值。

以下是IntelliJ IDEA上的一个例子:

example