Отладка исключений нулевого указателя - PullRequest
0 голосов
/ 22 июня 2011

Я пытаюсь отладить исключение нулевого указателя в 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)

Как я могу сузить, где этот нулевой указатель может быть?

Ответы [ 2 ]

8 голосов
/ 22 июня 2011

Вы скомпилировали свой исходный код без отладочной информации; например javac -g:none .... Компилируйте с отладочной информацией (например, javac -g ...), и трассировка стека будет более информативной.

Вот несколько ссылок:

  • Страница справочника javac.
  • Цель javac в руководстве Ant .
  • Документация по плагину компилятора Maven .

(FWIW, стандартное поведение компиляторов Java ... без -g опций ... состоит в том, чтобы включать имена исходных файлов и номера строк. Так что вы что-то в своих скриптах сборки делаете что-то, чтобы пропустить отладку информация. Это хорошо для минимизации размера ваших файлов классов / JAR, но плохо для отладки.)

2 голосов
/ 22 июня 2011

Проверьте конструктор core.InputPanel.Доступ с нулевой ссылкой.Убедитесь, что все ссылки на объекты не равны NULL в конструкторе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...