【问题标题】:How do I configure NetBeans to only step through Java code that I've written如何将 NetBeans 配置为仅单步执行我编写的 Java 代码
【发布时间】:2010-05-20 16:50:36
【问题描述】:

我错过了什么吗?我很高兴所有代码都在那里展示了泛型集合是如何工作的等等。但是,当我想简单地浏览我的代码时,我永远发现自己比我关心的更深入地研究了 Java 自己的库代码。

是否可以在单步执行代码时简单地禁用它 - 我想将所有这些内容视为黑盒,代码单步执行仅适用于我编写的内容。

你知道吗,现在我已经具备了这种能力,是否也可以用这种方式封装我自己的代码,这样我就可以单步执行我最感兴趣的部分?

如果我不能在 netbeans 中轻松使用,是否可以在 eclipse 中使用?

谢谢

【问题讨论】:

    标签: java debugging netbeans


    【解决方案1】:

    实际上,最简单的方法是转到 Window -> Debugging -> Sources 并检查您要调试并单步执行的文件。您很可能只需要取消选中项目中的其他来源。

    但这是最简单的方法。

    【讨论】:

    • 太棒了!从来不知道这是可能的!谢谢。
    • 这是另一种方法......而且比定义步骤过滤器要容易一些
    【解决方案2】:

    调试器有不同的“步进”指令:

    • 跳过(F8Shift+F8 在 NetBeans 中)

      statementA; // step over: to callB
      callB();    // step over: to statementB: it will treat the call as a
                  //  black-box.
      statementB;
      
    • 进入(Netbeans 中的F7

      statementA = callA() + 4; // step into: will step into the expression
                                // and start to debug the "callA()" method.
      callB();                  // step into: will step into the "callB()" method.
      statementB;               // some statements don't have anything to step into
      
    • 退出(在 Netbeans 中为 Ctrl+F7

      void methodB() {
          someStatementB; // stepOut will treat the rest of the method as
                          // a black-box, and you will end up at "someStatementC".
      }
      
      someStatementA;
      methodB();
      someStatementC;
      

    您需要“跳过”您想要视为黑盒的方法和表达式。

    自动“跳过”你不想要的课程:

    http://h.imagehost.org/0115/NetbeansStepFilter.png

    ToolsOptionsMiscellaneousJava DebuggerStep Filters

    ⊗不要踏入

    然后按添加,并添加java.*javax.*,以及您不想调试的所有其他类。这是一个“全局”设置,不是针对每个项目的!

    【讨论】:

    • 谢谢。我知道,我只是不想在浏览代码时打扰,这真的让我不得不做出决定。我通常只关心我自己的代码,所以我想将我的调试器配置为自动跳过不在我的项目中的文件,或者标记为调试范围内的文件。
    • 更新:在 NetBeans 中设置步骤过滤器的分步说明。
    【解决方案3】:

    在 Eclipse 中,您可以定义步骤过滤器(在调试期间您不想介入的包)。

    您将在“Window/Preferences”和“Java/Debug/Step Filtering”中找到配置。

    【讨论】:

    • 这听起来正是我所追求的,谢谢。我有点坚持使用 NetBeans,我过去确实使用过 eclipse(在 RSM 的背面)并且很享受使用它的时间。如果我真的不能在 NetBeans 中做我需要的事情,我会跳回 Eclipse。
    • 你给了我力量!您给了我术语“步骤过滤器”,我发现 NetBeans 中也存在此功能,不知何故,这些词不等同于我的要求,所以我跳过了该功能,但它巧妙地总结了我的要求! :-)
    • 为什么投反对票? SO 也在 Eclipse 中寻求解决方案!
    【解决方案4】:

    您可以在 NetBeans 8.0.2 中选中“逐步通过过滤器以获取未过滤的代码”

    【讨论】:

      【解决方案5】:

      NetBeans 6.8 也有步骤过滤器。

      使用工具->选项(Mac 上的 NetBeans->首选项)打开选项对话框。

      【讨论】:

        猜你喜欢
        • 2016-06-12
        • 1970-01-01
        • 1970-01-01
        • 2012-01-06
        • 1970-01-01
        • 2020-03-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多