我想調試Java中的空指針異常,但堆棧跟蹤正在無益。它不能指向任何特別的東西:調試空指針異常
[exec] Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
[exec] at core.InputPanel.<init>(Unknown Source)
[exec] at core.Main.<init>(Unknown Source)
如何縮小這個空指針可能的位置?
我想調試Java中的空指針異常,但堆棧跟蹤正在無益。它不能指向任何特別的東西:調試空指針異常
[exec] Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
[exec] at core.InputPanel.<init>(Unknown Source)
[exec] at core.Main.<init>(Unknown Source)
如何縮小這個空指針可能的位置?
您已經編譯了您的源代碼而沒有調試信息;例如javac -g:none ...
。編譯調試信息(例如javac -g ...
),堆棧跟蹤將更具信息性。
這裏有一些參考:
javac
manual page.javac
目標。(FWIW,在Java編譯器的默認行爲......沒有-g
選項...將包括源文件名和行號。所以,你東西你構建腳本正在做的東西省去了調試信息,這對於最小化類/ JAR文件的大小是有好處的,但對調試不利。)
檢查構造函數core.InputPanel
。有空引用訪問。檢查構造函數中的所有對象引用都是非空的。
您能否輕鬆地重現它?如何通過它調試你的方式? – yas4891