簡體   English   中英

如何將 NetBeans 配置為僅單步執行我編寫的 Java 代碼

[英]How do I configure NetBeans to only step through Java code that I've written

我錯過了什么嗎? 我很高興所有這些代碼都展示了泛型集合如何工作等等。但是,當我想簡單地走我的代碼時,我永遠發現自己比我關心的更深入 Java 自己的庫代碼。

是否可以在步進代碼時簡單地禁用它 - 我想將所有這些東西視為黑盒,代碼步進僅適用於我編寫的東西。

你知道嗎,現在我有了這個能力,是否也可以用這種方式包裝我自己的代碼,這樣我就可以只執行我最感興趣的部分?

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

謝謝

實際上,最簡單的方法是轉到 Window -> Debugging -> Sources 並勾選要調試的文件並進入。 很可能您只需要取消選中項目中的其他來源。

但這是最簡單的方法。

調試器有不同的“步進”指令:

  • 跳過(NetBeans 中的F8Shift + F8

     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

工具選項雜項Java 調試器步驟過濾器

⊗ 不要踏入

然后按Add ,然后添加java.*javax.* ,以及您不想調試的所有其他類。 這是一個“全局”設置,而不是每個項目!

在 Eclipse 中,您可以定義步驟過濾器(在調試期間您不想介入的包)。

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

NetBeans 6.8 也有步驟過濾器。

使用工具->選項(Mac 上的 NetBeans->首選項)打開選項對話框。 替代文字

您可以在 NetBeans 8.0.2 中選中“逐步執行過濾器以到達未過濾的代碼”

Java 選項 -> Java 調試器窗口

我正在使用:

產品版本:Apache NetBeans IDE 9.0(在20180708上構建incubator-netbeans-release-334-on)Java:11; Java HotSpot(TM)64位服務器VM 11 + 28運行時:Java(TM)SE Runtime Environment 11 + 28系統:在x86_64上運行的Mac OS X版本10.14.6; UTF-8; zh_(nb)

在以前的NetBeans版本中,“步驟過濾器”選項似乎可以正常工作。 例如,輸入java。*將遍歷所有Java庫文件。 但是現在看來似乎行不通。 即使輸入java.util。*似乎也不起作用。 它仍然進入Java庫代碼。 實際上,進入一個特定的Java類(如java.lang.StringBuilder)仍然會進入該代碼。

我還有其他東西嗎? Java開發人員知道嗎? 我怎么告訴他們? 我找不到實際提交問題報告的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM