java string debug_关于Java:在Eclipse中调试时查看完整的字符串

在调试Java代码时,视图" Variables"和" Expressions"中的字符串仅显示到一定长度,然后Eclipse显示" ..."。

有什么办法检查整个字符串吗? (这减轻了添加日志语句以在任何地方进行调试的痛苦)

您在哪里看到这种行为? 调试器的哪一部分?

附带说明,这可能是一个误称,因为它可能对您不起作用,但是如果您使用java.util.logging或log4j之类的调试库,则可以轻松地将调试语句(具有不同级别的调试)转换为 打印输出或日志文件,它可能给您带来在调试窗口中筛选字符串可能无法获得的优势。 只是一个想法=)

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

d18f75fad6cbb09aa506d5e8b24a546b.png

比所选方法更好的解决方案。谢谢!

值得指出的是,"详细信息窗格"是显示字符串内容的部分。

如何在日食开普勒中做到这一点?请帮助

好消息是,当将鼠标悬停在变量上,在"检查"窗口或"表达式"视图中检查并在"显示"视图中显示值时,此更改似乎也会影响显示的长度。

Ive更新了正确的解决方案(较早接受的解决方案是真正旧Eclipse版本的唯一解决方案)。

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

我只能看到"data:imagebitmap;base64,9j4AAQSkZJRgABAQAAAQABAAD2wBDAAEBAQEBAQEBAQEBAQEBAQE... (length: 22869)"。设置"最大长度"选项不起作用,并且也设置"更改值"。

@falko" Max Length"对我不起作用," Change value"没问题(在等待几秒钟后,具体取决于变量长度)。

至少在我的系统上,这比增加"最大长度"(Max Length)慢得多(请参阅其他答案)。

eclipse对您的想法不太满意。.我尝试过此方法,从现在起30分钟后,我一直等着对eclipse的任何反应。.Buuut:似乎起作用;)

如果您的字符串很长,我可以使用另一种策略:将其转储到文件中。我在"显示"视图中使用了一段代码,该代码经过评估可以将数据转储到文件中。我使用Commons IO,但是您可以使用仅JDK方法。

org.apache.commons.io.FileUtils.writeStringToFile(new java.io.File(""), );

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

不错的解决方法。我个人将这个答案作为最佳答案。注意:必须为运行JVM的系统定义,如果您进行远程调试,则有所不同,在这种情况下,文件将写在远程系统上,而不是在运行Eclipse的工作站上。

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

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

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

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

4)干杯

2b2a6f497142dfd72ac6b67926fdc97d.png

这种图形化的解释确实很有帮助。 +1

当调试器到达所需的String值时,只需键入sysOut语句

System.out.println("The value is :

" + query);

选择上面的语句,右键单击->执行

它将在控制台上打印值

Eclipse火星中没有" maxLength"。而且,"更改值"仅适用于"变量",而不适用于"表达式",因此以上内容都不适合我。

ce9e2415223c6a3749bc7bf989db4d2b.png

并且,表达式在中间而不是在结尾处切掉。我猜他们改变了默认行为。

对我唯一有效的方法是,扩展表达式名称列的宽度,然后单击表达式以将其全部选中以查看全长内容。

对于基于Eclipse的基于javascript的调试,"更改值"方法和"最大长度"方法对我都失败了,将必需的对象添加到watch(Expressions),然后右键单击监视的表达式以选择"加载完整值"是唯一的解决方案对我有用,但即使这样,也会在输出中插入不需要的" n"。

注意-必须设置"最大长度",才能使"加载完整值"加载值直到最大长度(eclipse中的默认值为10000)。请参考以上答案,以了解如何设置最大长度。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值