在Eclipse中调试时查看完整的字符串

rag*_*was 159 java eclipse debugging

在调试Java代码时,视图"变量"和"表达式"中的字符串仅显示一定长度,之后Eclipse显示"..."

有没有办法检查整个字符串?(这减轻了添加日志语句以进行调试的痛苦)

Eug*_*hov 216

在"变量"视图中,您可以右键单击"详细信息"窗格(显示字符串内容的部分),然后选择"最大长度..."弹出菜单.相同的长度适用于表达式检查器弹出窗口和其他一些地方.

在此输入图像描述

  • 比选择的方法更好的解决方案.谢谢! (17认同)
  • 很高兴指出Details Pane是显示字符串内容的部分. (13认同)

Umb*_*rto 133

在" 变量"视图中,右键单击变量并选择" 更改值".如果您的变量很大,则必须等待几分钟(在这种情况下,Eclipse不会响应命令)但最终Eclipse将完全显示您的变量.

  • 我只能看到`"data:image/bitmap;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQE...(长度:22869)"`。设置“最大长度”选项不起作用,也设置“更改值”。 (2认同)

zvi*_*ico 20

如果你有一个非常长的字符串,我使用不同的策略:将其转储到文件中.我在Display视图中使用了一段代码,它被评估为将数据转储到文件中.我使用Commons IO,但你只能使用JDK方法.

org.apache.commons.io.FileUtils.writeStringToFile(new java.io.File("<filename>"), <expression to evaluate>);
Run Code Online (Sandbox Code Playgroud)

当然,您需要在类路径中使用Commons IO JAR才能工作.如果不这样做,请使用JDK工作.

  • 很酷的解决方法.我个人会接受这个作为最佳答案.警告:必须为运行JVM的系统定义<filename>,如果您进行远程调试,这会有所不同,在这种情况下,文件将写在远程系统上,而不是在运行eclipse的工作站上. (4认同)

Waq*_*med 16

从eclipse调试视图查看String值的最佳方法如下.

1)切换到Eclipse中的调试视图

2)在变量窗格中选择所需的变量.

3)右键单击显示值的变量窗格的显示区域,然后单击"最大长度".在"配置详细信息窗格"中输入最大字符值.

4)干杯

在此输入图像描述

  • 这个图形解释确实很有帮助。+1 (2认同)