有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

eclipse您使用哪种Java调试器

我花了很多时间在Eclipse中使用JPDA调试应用程序。Eclipse调试器有几个问题真的让我很恼火。有人能推荐插件、更好的调试器或者我还不知道的技巧吗

  • 在“变量”选项卡中,您可以输入并执行一些Java代码。然而,你首先需要点击一些东西(我通常点击“这个”)来给它一些上下文。然后,在您输入一个冗长的Java表达式来调试某个东西并“执行”它之后,您的表达式将被替换为结果,因此您需要重新输入它。有没有更好的方法,比如一个控制台或者我缺少的东西
  • 当你浏览数据结构时,调试器中的演示会留下很多不尽如人意的地方。您可以看到列表、地图、StringBuilder等的内部表示。我想看到的是这些对象在概念上包含的内容。有没有办法做到这一点,或者使用其他调试器,或者扩展或其他什么
  • 当抛出异常时,是否有某种方法可以检查抛出异常的应用程序的状态?目前,我需要在异常发生之前设置断点,然后尝试重现它
  • 当我跨过一行上面有很多语句的时候,我实际上看不到这些语句中的哪一条正在执行,除非“跨进”每一条语句,看看它把我带到了哪里
  • 如果找不到源代码,Eclipse就会茫然地盯着你看。你会看到一个有用的屏幕,上面写着“未找到类文件编辑器/源代码”,这是完全无用的。我更希望能够分步通过字节码,这样我至少可以看到发生了什么。有人知道Java调试器比Eclipse做得更好吗

共 (2) 个答案

  1. # 1 楼答案

    我很同意维拉斯·贾甘纳特所说的

    使用Eclipse调试器 其他要点:

    1)显示视图。此视图允许您在当前堆栈帧的上下文中运行代码。这允许您检查任意代码位。在某些方面,它有点原始,但作为一个便笺簿效果很好

    4)如果想在一行中使用复杂表达式进行方法调用,可以导航到该函数,然后“运行到行”(Ctrl+R)

    5)你也可以使用分步过滤器来过滤你不关心的类。右键点击你不关心的堆栈框架,点击“过滤器类型”。确保打开“使用分步过滤器”。它是一个带有两个箭头的图标,位于Debug视图的drop to frame按钮的右侧

  2. # 2 楼答案

    通常,我会说eclipse的调试器比我喜欢的IDE更好,前四个版本是IntelliJ(免费版),IntelliJ可能在异常上有断点(允许你看到异常抛出时的状态),对象类型的自定义呈现器,和持久表达式(即,每次更改上下文时都会重新计算表达式)

    我不知道有哪种调试器可以单步执行字节码