我正在尝试在 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.- Ant manual 中的
javac
目标. - 内行 compiler plugin documentation .
(FWIW,Java 编译器的默认行为......没有 -g
选项......是包含源文件名和行号。所以你的构建脚本中的某些内容正在做省略调试信息的东西。这有利于最小化类/JAR 文件的大小,但不利于调试。)
关于java - 调试空指针异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6440657/