2010-07-04 69 views
3

我目前正在將一些新類整合到現有的應用程序中。我有一個JDialog,點擊後會引發大量運行時異常。Java Swing中級聯運行時錯誤

我是新來的Java調試 - 爲什麼所有這些Swing/AWT庫函數都不可用?

SO禁止我可以發佈圖片,所以這裏的到Eclipse調試器捕獲的鏈接:

http://i.imgur.com/jDWEe.png

爲什麼這些方法不可用?

回答

1

「不可用」表示類編譯時沒有調試信息,即使用-g:none開關與javac。由於這些是標準API類,我懷疑你的eclipse項目被配置爲使用來自JRE安裝而不是JDK的JRE系統庫。你可以在項目屬性中改變它(右鍵點擊project - > Properties - > Java Build Path - > Libraries);您可能必須先安裝JDK。

+0

我必須像你說的那樣將eclipse指向JDK,現在我有更多的調試信息。謝謝。 – Merto 2010-07-04 13:00:45

2

這些類是可用的,它們已經被編譯成沒有行號,所以eclipse調試器只是告訴你,它不知道原始源等當前在哪一行JButton。請參閱各種javac -g選項。行號信息在調試時不會很有幫助,但在您自己的代碼中,這將有助於追蹤堆棧跟蹤的原因,並且當然可以幫助調試器知道它的位置。

+0

啊,我假設'調試'的角度自動構建與這些編譯標誌。 – Merto 2010-07-04 13:02:14